<!doctype html>
<html lang="zh-CN">
<head>
    <title>go-view: 🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 +
        NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS</title>
    <meta content="on" http-equiv="x-dns-prefetch-control">
    <link href="//e.gitee.com" rel="dns-prefetch">
    <link href="//files.gitee.com" rel="dns-prefetch">
    <link href="//toscode.gitee.com" rel="dns-prefetch">
    <link href="https://cn-assets.gitee.com" rel="dns-prefetch">
    <link href="https://portrait.gitee.com" rel="dns-prefetch">
    <link rel="shortcut icon" type="image/vnd.microsoft.icon"
          href="https://cn-assets.gitee.com/assets/favicon-9007bd527d8a7851c8330e783151df58.ico">
    <link rel="canonical" href="https://gitee.com/dromara/go-view">
    <meta content="gitee.com/dromara/go-view git https://gitee.com/dromara/go-view.git" name="go-import">
    <meta charset="utf-8">
    <meta content="always" name="referrer">
    <meta content="Gitee" property="og:site_name">
    <meta content="Object" property="og:type">
    <meta content="https://gitee.com/dromara/go-view" property="og:url">
    <meta content="https://foruda.gitee.com/avatar/1664439580221599999/5162368_dromara_1664439580.png" itemprop="image"
          property="og:image">
    <meta content="dromara/go-view" itemprop="name" property="og:title">
    <meta content="🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS"
          property="og:description">
    <meta content="go-view,TypeScript" name="Keywords">
    <meta content="🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS"
          itemprop="description" name="Description">
    <meta content="pc,mobile" name="applicable-device">
    <meta content="IE=edge" http-equiv="X-UA-Compatible">
    <meta name="csrf-param" content="authenticity_token">
    <meta name="csrf-token"
          content="9v7jMFFmGpnQUX5sULELiXI0UE53aK/iX9pTuPO64NI71EJlg2s49E+EiYY9qv+O3N5r3SV9a5HaUMG2avz2lQ==">
    <link rel="stylesheet" media="all"
          href="https://cn-assets.gitee.com/assets/application-ecf8b6314002fb860aab563f4204a391.css">
    <script>
        //<![CDATA[
        window.gon = {};
        gon.locale = "zh-CN";
        gon.sentry_dsn = null;
        gon.baidu_register_hm_push = null;
        gon.sensor = {
            "server_url": "https://haveaniceday.gitee.com:3443/sa?project=production",
            "sdk_url": "https://cn-assets.gitee.com/assets/static/sensors-sdk-2f850fa5b654ad55ac0993fda2f37ba5.js",
            "page_type": "仓库页面"
        };
        gon.info = {"controller_path": "projects", "action_name": "show", "current_user": false};
        gon.tour_env = {
            "current_user": null,
            "action_name": "show",
            "original_url": "https://gitee.com/dromara/go-view",
            "controller_path": "projects"
        };
        gon.http_clone = "https://gitee.com/dromara/go-view.git";
        gon.user_project = "dromara/go-view";
        gon.manage_branch = "管理分支";
        gon.manage_tag = "管理标签";
        gon.enterprise_id = 0;
        gon.create_reaction_path = "/dromara/go-view/reactions";
        gon.ipipe_base_url = "https://go-api.gitee.com";
        gon.artifact_base_url = "https://go-repo.gitee.com";
        gon.gitee_go_remote_url = "https://go.gitee.com/assets";
        gon.gitee_go_active = true;
        gon.current_project_is_mirror = false;
        gon.show_repo_comment = false;
        gon.diagram_viewer_path = "https://diagram-viewer.giteeusercontent.com";
        gon.cp = "点击复制";
        gon.aready_cp = "已复制";
        gon.is_fork = false;
        gon.ref = "master";
        //]]>
    </script>
    <script src="https://cn-assets.gitee.com/assets/static/sensor-6269b9ad61bbcdaff20078e5dcff62d5.js"></script>
    <script src="https://cn-assets.gitee.com/assets/static/sentry-5.1.0-a823fb0be1b61c5d7ca4a89f0536cb0a.js"></script>
    <script src="https://cn-assets.gitee.com/assets/application-eeeb0963395105e70ea28ab8daa4a528.js"></script>
    <script src="https://cn-assets.gitee.com/assets/lib/jquery.timeago.zh-CN-4a4818e98c1978d2419ab19fabcba740.js"></script>
    <link rel="stylesheet" media="all"
          href="https://cn-assets.gitee.com/assets/projects/application-46b94c31ba11ae8c37eacce2bdb5603e.css">
    <script src="https://cn-assets.gitee.com/assets/projects/app-28ac7648a2f60a4a1529d6db20e4f7f4.js"></script>
    <script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
    <script>
        var title = document.title.replace(/( - Gitee| - 码云)$/, '')
        imgUrl = '';

        document.addEventListener('DOMContentLoaded', function (event) {
            var imgUrlEl = document.querySelector('.readme-box .markdown-body > img, .readme-box .markdown-body :not(a) > img');
            imgUrl = imgUrlEl && imgUrlEl.getAttribute('src');

            if (!imgUrl) {
                imgUrlEl = document.querySelector('meta[itemprop=image]');
                imgUrl = imgUrlEl && imgUrlEl.getAttribute('content');
                imgUrl = imgUrl || "https://gitee.com/static/images/logo_themecolor.png";
            }

            wx.config({
                debug: false,
                appId: "wxff219d611a159737",
                timestamp: "1715135393",
                nonceStr: "b982888e566f89de80661b397275b8b1",
                signature: "3530101f906172d7fc8a59f4f02c9b38afab274f",
                jsApiList: [
                    'onMenuShareTimeline',
                    'onMenuShareAppMessage'
                ]
            });

            wx.ready(function () {
                wx.onMenuShareTimeline({
                    title: title, // 分享标题
                    link: "https://gitee.com/dromara/go-view", // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: imgUrl // 分享图标
                });
                wx.onMenuShareAppMessage({
                    title: title, // 分享标题
                    link: "https://gitee.com/dromara/go-view", // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    desc: document.querySelector('meta[name=Description]').getAttribute('content'),
                    imgUrl: imgUrl // 分享图标
                });
            });
            wx.error(function (res) {
                console.error('err', res)
            });
        })
    </script>
    <script type="text/x-mathjax-config">
MathJax.Hub.Config({
  tex2jax: {
    inlineMath: [['$','$'], ['\\(','\\)']],
    displayMath: [["$$","$$"],["\\[","\\]"]],
    processEscapes: true,
    skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code'],
    ignoreClass: "container|files",
    processClass: "markdown-body"
  }
});

    </script>
    <script src="https://cn-assets.gitee.com/uploads/resources/MathJax-2.7.2/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
    <script>
        (function () {
            var messages = {
                'zh-CN': {
                    addResult: '增加 <b>{term}</b>',
                    count: '已选择 {count}',
                    maxSelections: '最多 {maxCount} 个选择',
                    noResults: '未找到结果',
                    serverError: '连接服务器时发生错误'
                },
                'zh-TW': {
                    addResult: '增加 <b>{term}</b>',
                    count: '已選擇 {count}',
                    maxSelections: '最多 {maxCount} 個選擇',
                    noResults: '未找到結果',
                    serverError: '連接服務器時發生錯誤'
                }
            }

            if (messages[gon.locale]) {
                $.fn.dropdown.settings.message = messages[gon.locale]
            }
        }());
    </script>
    <script>
        var userAgent = navigator.userAgent;
        var isLessIE11 = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1;
        if (isLessIE11) {
            var can_access = ""
            if (can_access != "true") {
                window.location.href = "/incompatible.html";
            }
        }
        document.addEventListener("error", function (ev) {
            var elem = ev.target;
            if (elem.tagName.toLowerCase() === 'img') {
                elem.src = "";
            }
        }, true);
    </script>
</head>
<body class="git-project lang-zh-CN">
<header class="common-header fixed noborder" id="git-header-nav">
    <div class="ui container">
        <div class="ui menu header-menu header-container">
            <div class="git-nav-expand-bar"><i class="iconfont icon-mode-table"></i>
            </div>
            <div class="gitee-nav__sidebar">
                <div class="gitee-nav__sidebar-container">
                    <div class="gitee-nav__sidebar-top">
                        <div class="gitee-nav__avatar-box"></div>
                        <div class="gitee-nav__buttons-box"><a class="ui button small fluid orange" href="/login">登录</a>
                            <a class="ui button small fluid basic is-register" href="/signup">注册</a>
                        </div>
                    </div>
                    <div class="gitee-nav__sidebar-middle">
                        <div class="gitee-nav__sidebar-list">
                            <ul>
                                <li class="gitee-nav__sidebar-item"><a href="/explore"><i
                                        class="iconfont icon-ic-discover"></i> <span
                                        class="gitee-nav__sidebar-name">开源</span> </a></li>
                                <li class="gitee-nav__sidebar-item"><a href="/enterprises"><i
                                        class="iconfont icon-ic-enterprise"></i> <span class="gitee-nav__sidebar-name">企业版</span>
                                </a></li>
                                <li class="gitee-nav__sidebar-item"><a href="/education"><i
                                        class="iconfont icon-ic-education"></i> <span class="gitee-nav__sidebar-name">高校版</span>
                                </a></li>
                                <li class="gitee-nav__sidebar-item split-line"></li>
                                <li class="gitee-nav__sidebar-item"><a href="/search"><i
                                        class="iconfont icon-ic-search"></i> <span
                                        class="gitee-nav__sidebar-name">搜索</span> </a></li>
                                <li class="gitee-nav__sidebar-item"><a href="/help"><i
                                        class="iconfont icon-help-circle"></i> <span class="gitee-nav__sidebar-name">帮助中心</span>
                                </a></li>
                                <li class="gitee-nav__sidebar-item"><a href="/terms"><i class="iconfont icon-file"></i>
                                    <span class="gitee-nav__sidebar-name">使用条款</span> </a></li>
                                <li class="gitee-nav__sidebar-item"><a href="/about_us"><i
                                        class="iconfont icon-issuepx"></i> <span
                                        class="gitee-nav__sidebar-name">关于我们</span> </a></li>
                            </ul>
                        </div>
                    </div>
                    <div class="gitee-nav__sidebar-bottom">
                        <div class="gitee-nav__sidebar-close-button"><i class="fa fa-angle-double-left"></i>
                        </div>
                    </div>
                </div>
            </div> <!-- /todo 10周年活动结束后 恢复 -->
            <div class="item gitosc-logo"><a href="https://gitee.com"><img alt="Gitee - 基于 Git 的代码托管和研发协作平台"
                                                                           class="ui inline image" height="28"
                                                                           src="/static/images/logo.svg?t=158106664"
                                                                           title="Gitee - 基于 Git 的代码托管和研发协作平台"
                                                                           width="95"> <img
                    alt="Gitee - 基于 Git 的代码托管和研发协作平台" class="ui inline black image" height="28"
                    src="/static/images/logo-black.svg?t=158106664" title="Gitee - 基于 Git 的代码托管和研发协作平台" width="95"> </a>
            </div>
            <a title="开源" class="item " href="/explore">开源 </a><a title="企业版" class="item "
                                                                  sa_evt="click_GiteeCommunity_tab_En"
                                                                  href="/enterprises">企业版 </a><a title="高校版"
                                                                                                 class="item "
                                                                                                 href="/education">高校版 </a><a
                title="私有云" class="item" target="_blank" href="https://gitee.cn?utm_source=giteecom">私有云 </a><a
                title="Gitee AI" class="item mr-3" id="gitee-blog" target="_blank"
                href="https://ai.gitee.com/?utm_sources=site_nav">Gitee AI <sup class="ui red label"> NEW </sup> </a>
            <div class="center responsive-logo"><a href="https://gitee.com"><img alt="Gitee - 基于 Git 的代码托管和研发协作平台"
                                                                                 class="ui inline image" height="24"
                                                                                 src="/static/images/logo.svg?t=158106664"
                                                                                 title="Gitee - 基于 Git 的代码托管和研发协作平台"
                                                                                 width="85"> <img
                    alt="Gitee - 基于 Git 的代码托管和研发协作平台" class="ui inline black image" height="24"
                    src="/static/images/logo-black.svg?t=158106664" title="Gitee - 基于 Git 的代码托管和研发协作平台" width="85"> </a>
            </div>
            <div class="right menu userbar right-header" id="git-nav-user-bar">
                <form class="ui item" id="navbar-search-form" data-text-require="搜索关键字不能少于1个" data-text-filter="搜索格式不正确"
                      action="/search" accept-charset="UTF-8" method="get">
                    <input name="utf8" type="hidden" value="✓">
                    <input type="hidden" name="type" id="navbar-search-type">
                    <input type="hidden" name="fork_filter" id="fork_filter" value="on">
                    <div class="ui search header-search">
                        <input type="text" name="q" id="navbar-search-input" value="" class="prompt" placeholder="搜开源">
                    </div>
                </form>
                <script>
                    var can_search_in_repo = 1,
                        repo = "VFZSck0wMUVWWHBPYW1Sb1RucFplbHBuUFQxaE56WXpaZz09YTc2M2Y=",
                        reponame = "dromara/go-view";

                    $(function () {
                        var $search = $('#navbar-search-form .ui.search');
                        $search.search({
                            apiSettings: {
                                url: '/search/relative_project?q={query}',
                                onResponse: function (res) {
                                    if (res && res.status === 200 && res.data) {
                                        var query = htmlSafe($search.search('get value'));

                                        res.data.map(function (item) {
                                            item.path_ns = '/' + item.path_ns;
                                            item.icon = 'iconfont icon-project-public';
                                        });
                                        res.data.unshift({
                                            name_ns: "在全站搜索 <b class='hl'>" + query + "</b> 相关项目",
                                            path_ns: '/search?fork_filter=on&q=' + query,
                                            icon: 'iconfont icon-search'
                                        });
                                        return res;
                                    } else {
                                        return {data: []};
                                    }
                                }
                            },
                            fields: {
                                results: 'data',
                                description: 'name_ns',
                                url: 'path_ns',
                                icon: 'icon'
                            },
                            minCharacters: 1,
                            maxResults: 10,
                            searchDelay: 250,
                            showNoResults: false,
                            transition: 'fade'
                        });
                    });
                </script>
                <div class="ui item" id="feature-update-notice">
                    <div class="notice-update-icon"><a class="notice-update-popup click-knowed" title=""
                                                       href="javascript:void(0)"><img alt="功能更新" title=""
                                                                                      class="bubl_icon bubl-off-icon"
                                                                                      src="https://cn-assets.gitee.com/assets/bulb_off-24ee940be20998aace89a3f040cbc704.svg">
                        <img alt="功能更新" title="" class="bubl_icon bubl-on-icon"
                             src="https://cn-assets.gitee.com/assets/bulb_on-3986b1dc417285398e3d15671bd8f261.svg"> </a>
                    </div>
                    <div class="feature-update-notice-panel menu">
                        <div class="notice-img">
                            <img alt="" title="" class="notice-img-show" src="">
                        </div>
                        <div class="notice-update-title"></div>
                        <div class="notice-update-des"></div>
                        <div class="notice-btn-list d-flex-between">
                            <button name="button" type="button"
                                    class="ui basic orange button btn-notice btn-knowed click-knowed"
                                    style="margin-right: 0">我知道了
                            </button>
                            <a class="ui button orange btn-notice btn-details click-knowed" target="_blank"
                               href="">查看详情</a>
                        </div>
                    </div>
                </div>
                <a class="item git-nav-user__login-item" sa_evt="login_show" sa_referrer_url=""
                   sa_referrer_action="站导航右上角-登录按钮" sa_referrer_type="仓库页面" href="/login">登录 </a><a
                    class="item git-nav-user__register-item" sa_evt="register_show" sa_referrer_url=""
                    sa_referrer_action="站导航右上角-注册按钮" sa_referrer_type="仓库页面" href="/signup">注册 </a>
                <script>
                    $('.destroy-user-session').on('click', function () {
                        $.cookie('access_token', null, {path: '/'});
                    })
                </script>
            </div>
        </div>
    </div>
</header>
<script>
    Gitee.initNavbar()
    Gitee.initRepoRemoteWay()
    $.cookie('user_locale', null)
</script>
<script>
    var userAgent = navigator.userAgent;
    var isLessIE11 = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1;
    if (isLessIE11) {
        var can_access = ""
        if (can_access != "true") {
            window.location.href = "/incompatible.html";
        }
    }
</script>
<div class="fixed-notice-infos">
    <div class="all-messages">
    </div>
    <div class="ui container">
        <div class="flash-messages" id="messages-container"></div>
    </div>
    <script>
        (function () {
            $(function () {
                var $error_box, alertTip, notify_content, notify_options, template;
                template = '<div data-notify="container" class="ui {0} message" role="alert">' + '<i data-notify="dismiss" class="close icon"></i>' + '<span data-notify="message">{2}</span>' + '</div>';
                notify_content = null;
                notify_options = {};
                alertTip = '';
                $error_box = $(".flash_error.flash_error_box");
                if (notify_options.type === 'error' && $error_box.length > 0 && !$.isEmptyObject(notify_content.message)) {
                    if (notify_content.message === 'captcha_fail') {
                        alertTip = "验证码不正确";
                    } else if (notify_content.message === 'captcha_expired') {
                        alertTip = "验证码已过期，请点击刷新";
                    } else if (notify_content.message === 'not_found_in_database') {
                        alertTip = "帐号或者密码错误";
                    } else if (notify_content.message === 'not_found_and_show_captcha') {
                        alertTip = "帐号或者密码错误";
                    } else if (notify_content.message === 'phone_captcha_fail') {
                        alertTip = "手机验证码不通过";
                    } else {
                        alertTip = notify_content.message;
                    }
                    return $error_box.html(alertTip).show();
                } else if (notify_content) {
                    if ("show" === 'third_party_binding') {
                        return $('#third_party_binding-message').html(notify_content.message).addClass('ui message red');
                    }
                    notify_options.delay = 3000;
                    notify_options.template = template;
                    notify_options.offset = {
                        x: 10,
                        y: 30
                    };
                    notify_options.element = '#messages-container';
                    return $.notify(notify_content, notify_options);
                }
            });

        }).call(this);
    </script>
</div>
<script>
    (function () {
        $(function () {
            var setCookie;
            setCookie = function (name, value) {
                $.cookie(name, value, {
                    path: '/',
                    expires: 365
                });
            };
            $('#remove-bulletin, #remove-bulletin-dashboard').on('click', function () {
                setCookie('remove_bulletin', "gitee-maintain-1713425033");
                $('#git-bulletin').hide();
            });
            $('#remove-member-bulletin').on('click', function () {
                setCookie('remove_member_bulletin', "gitee_member_bulletin");
                $(this).parent().hide();
            });
            return $('#remove-gift-bulletin').on('click', function () {
                setCookie('remove_gift_bulletin', "gitee-gift-bulletin");
                $(this).parent().hide();
            });
        });

    }).call(this);
</script>
<script>
    function closeMessageBanner(pthis, type, val) {
        var json = {}

        val = typeof val === 'undefined' ? null : val
        $(pthis).parent().remove()
        if (type === 'out_of_enterprise_member') {
            json = {type: type, data: val}
        } else if (type === 'enterprise_overdue') {
            json = {type: type, data: val}
        }
        $.post('/profile/close_flash_tip', json)
    }
</script>
<div class="site-content">
    <div class="git-project-header">
        <div class="fixed-notice-infos">
            <div class="ui info icon floating message green" id="fetch-ok" style="display: none">
                <div class="content">
                    <div class="header status-title"><i class="info icon status-icon"></i> 代码拉取完成，页面将自动刷新
                    </div>
                </div>
            </div>
            <div class="ui info icon floating message error" id="fetch-error" style="display: none">
                <div class="content">
                    <div class="header status-title"><i class="info icon status-icon"></i> <span
                            class="error_msg"></span>
                    </div>
                </div>
            </div>
        </div>
        <div class="ui container">
            <div class="git-project-categories"><a href="/explore">开源项目</a> <span class="symbol">&gt;</span> <a
                    href="/explore/new-tech">前沿技术</a> <span class="symbol">&gt;</span> <a
                    href="/explore/lowcode">低代码</a> <span class="symbol and-symbol">&amp;&amp;</span>
            </div>
            <div class="git-project-header-details">
                <div class="git-project-header-container">
                    <div class="git-project-header-actions">
                        <div class="ui tiny modal project-donate-modal" id="project-donate-modal"><i
                                class="iconfont icon-close close"></i>
                            <div class="header">
                                捐赠
                            </div>
                            <div class="content">
                                捐赠前请先登录
                            </div>
                            <div class="actions"><a class="ui blank button cancel">取消</a> <a class="ui orange ok button"
                                                                                             href="/login">前往登录</a>
                            </div>
                        </div>
                        <div class="ui small modal wepay-qrcode"><i class="iconfont icon-close close"></i>
                            <div class="header">
                                扫描微信二维码支付 <span class="wepay-cash"></span>
                            </div>
                            <div class="content weqcode-center">
                                <img id="wepay-qrcode" src="">
                            </div>
                            <div class="actions">
                                <div class="ui cancel blank button">
                                    取消
                                </div>
                                <div class="ui ok orange button">
                                    支付完成
                                </div>
                            </div>
                        </div>
                        <div class="ui mini modal" id="confirm-alipay-modal">
                            <div class="header">
                                支付提示
                            </div>
                            <div class="content">
                                将跳转至支付宝完成支付
                            </div>
                            <div class="actions">
                                <div class="ui approve orange button">
                                    确定
                                </div>
                                <div class="ui blank cancel button">
                                    取消
                                </div>
                            </div>
                        </div>
                        <span class="ui buttons basic watch-container">
         <div class="ui dropdown button js-project-watch" data-watch-type="unwatch">
          <input type="hidden" value=""> <i class="iconfont icon-watch"></i>
          <div class="text">
            Watch
          </div> <i class="dropdown icon"></i>
          <div class="menu"> <a data-value="unwatch" class="item" sa_evt="loginInform_show" sa_referrer_url=""
                                sa_referrer_action="Watch" sa_referrer_type="仓库页面" rel="nofollow" data-method="post"
                                href="/dromara/go-view/unwatch"><i class="iconfont icon-msg-read"></i> 不关注 </a><a
                  data-value="watching" class="item" sa_evt="loginInform_show" sa_referrer_url=""
                  sa_referrer_action="Watch" sa_referrer_type="仓库页面" rel="nofollow" data-method="post"
                  href="/dromara/go-view/watch"><i class="iconfont icon-msg-read"></i> 关注所有动态 </a><a
                  data-value="releases_only" class="disabled item" sa_evt="loginInform_show" sa_referrer_url=""
                  sa_referrer_action="Watch" sa_referrer_type="仓库页面" rel="nofollow" data-method="post"
                  href="/dromara/go-view/release_only_watch"><i class="iconfont icon-msg-read"></i> 仅关注版本发行动态 </a><a
                  data-value="ignoring" class="item" sa_evt="loginInform_show" sa_referrer_url=""
                  sa_referrer_action="Watch" sa_referrer_type="仓库页面" rel="nofollow" data-method="post"
                  href="/dromara/go-view/ignoring_watch"><i class="iconfont icon-msg-read"></i> 关注但不提醒动态 </a>
          </div>
         </div> <style>
  .js-project-watch .text .iconfont {
      display: none;
  }

  .js-project-watch a, .js-project-watch a:hover {
      color: #000;
  }

  .js-project-watch .item > .iconfont {
      visibility: hidden;
      margin-left: -10px;
  }

  .js-project-watch .selected .iconfont {
      visibility: visible;
  }

  .js-project-watch .menu {
      margin-top: 4px !important;
  }
</style> <script>
  $('.js-project-watch').dropdown({
      action: 'select',
      onChange: function (value, text, $selectedItem) {
          var type = value === 'unwatch' ? 'Watch' : 'Watching';
          $(this).children('.text').text(type);
          $(this).dropdown('set selected', value)
      }
  });
</script> <a class="ui button action-social-count" title="894" href="/dromara/go-view/watchers">894 </a></span> <span
                            class="basic buttons star-container ui"> <a class="ui button star" sa_evt="loginInform_show"
                                                                        sa_referrer_url="" sa_referrer_action="Star"
                                                                        sa_referrer_type="仓库页面" href="/login"><i
                            class="iconfont icon-star"></i> Star </a><a class="ui button action-social-count "
                                                                        title="12412"
                                                                        href="/dromara/go-view/stargazers">12.4K </a></span>
                        <span class="ui basic buttons fork-container" title="无权 Fork 此仓库"> <a class="ui button fork"
                                                                                              title="你必须登录后才可以fork一个仓库"
                                                                                              sa_evt="loginInform_show"
                                                                                              sa_referrer_url=""
                                                                                              sa_referrer_action="Fork"
                                                                                              sa_referrer_type="仓库页面"
                                                                                              href="/login"><i
                                class="iconfont icon-fork"></i> Fork </a><a
                                class="ui button action-social-count disabled-style" title="3828"
                                href="/dromara/go-view/members">3.8K </a></span>
                    </div>
                    <h2 class="git-project-title mt-0 mb-0"><a title="GVP - Gitee 最有价值开源项目"
                                                               class="ui small label git-project-gvp-badge"
                                                               target="_blank" href="/gvp">GVP</a><a title="dromara"
                                                                                                     class="author"
                                                                                                     href="/dromara">dromara</a>
                        / <a title="go-view" class="repository" target="" style="padding-bottom: 0px; margin-right: 4px"
                             sa_evt="repoClick" sa_location="仓库页面" sa_url="" sa_repo_id="19705367"
                             href="/dromara/go-view">go-view</a> <input type="hidden" name="recomm_at" id="recomm_at"
                                                                        value="2022-05-16 12:21"> <input type="hidden"
                                                                                                         name="project_title"
                                                                                                         id="project_title"
                                                                                                         value="dromara/go-view">
                    </h2>
                </div>
            </div>
        </div>
        <script>
            var title_import_url = "false";
            var title_post_url = "/dromara/go-view/update_import";
            var title_fork_url = "/dromara/go-view/sync_fork";
            var title_project_path = "go-view";
            var title_p_name = "go-view";
            var title_p_id = "19705367";
            var title_description = "🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS";
            var title_form_authenticity_token = "26GYA/of1DjMZbp1BT5bAFNsh99SubccQy444AoB0hYWizlWKBL2VVOwTZ9oJa8H/Ya8TACsc2/GpKruk0fEUQ==";
            var watch_type = "unwatch";
            var checkFirst = false;

            $('.js-project-watch').dropdown('set selected', watch_type);
            $('.checkbox.sync-wiki').checkbox();
            $('.checkbox.sync-prune').checkbox();
            $('.checkbox.team-member-checkbox').checkbox();
        </script>
        <style>
            i.loading, .icon-sync.loading {
                -webkit-animation: icon-loading 1.2s linear infinite;
                animation: icon-loading 1.2s linear infinite;
            }

            .qrcode_cs {
                float: left;
            }

            .check-sync-wiki {
                float: left;
                height: 28px;
                line-height: 28px;
            }

            .sync-wiki-warn {
                color: #e28560;
            }
        </style>
        <div class="git-project-nav">
            <div class="ui container">
                <div class="ui secondary pointing menu"><a class="item active" href="/dromara/go-view"><i
                        class="iconfont icon-code"></i> 代码 </a><a class="item " href="/dromara/go-view/issues"><i
                        class="iconfont icon-task"></i> Issues <span class="ui mini circular label"> 86 </span> </a><a
                        class="item " href="/dromara/go-view/pulls"><i class="iconfont icon-pull-request"></i> Pull
                    Requests <span class="ui mini circular label"> 3 </span> </a><a class="item "
                                                                                    href="/dromara/go-view/wikis"><i
                        class="iconfont icon-wiki"></i> Wiki </a><a class="item  " href="/dromara/go-view/graph/master"><i
                        class="iconfont icon-statistics"></i> 统计 </a><a class="item "
                                                                        href="/dromara/go-view/gitee_go"><i
                        class="iconfont icon-workflow"></i> 流水线 </a>
                    <div class="item">
                        <div class="ui pointing top right dropdown git-project-service">
                            <div><i class="iconfont icon-service"></i> 服务 <i class="dropdown icon"></i>
                            </div>
                            <div class="menu" style="display:none"><a class="item" href="/dromara/go-view/pages"><img
                                    src="/static/images/logo-en.svg" alt="Logo en">
                                <div class="item-title">
                                    Gitee Pages
                                </div>
                            </a><a class="item" href="/dromara/go-view/quality_analyses?platform=sonar_qube"><img
                                    src="https://cn-assets.gitee.com/assets/sonar_mini-5e1b54bb9f6c951d97fb778ef623afea.png"
                                    alt="Sonar mini">
                                <div class="item-title">
                                    质量分析
                                </div>
                            </a><a class="item" target="_blank" href="https://gitee.com/help/articles/4193"><img
                                    src="https://cn-assets.gitee.com/assets/jenkins_for_gitee-554ec65c490d0f1f18de632c48acc4e7.png"
                                    alt="Jenkins for gitee">
                                <div class="item-title">
                                    Jenkins for Gitee
                                </div>
                            </a><a class="item" target="_blank" href="https://gitee.com/help/articles/4318"><img
                                    src="https://cn-assets.gitee.com/assets/cloudbase-1197b95ea3398aff1df7fe17c65a6d42.png?20200925"
                                    alt="Cloudbase">
                                <div class="item-title">
                                    腾讯云托管
                                </div>
                            </a><a class="item" target="_blank" href="https://gitee.com/help/articles/4330"><img
                                    src="https://cn-assets.gitee.com/assets/cloud_serverless-686cf926ced5d6d2f1d6e606d270b81e.png"
                                    alt="Cloud serverless">
                                <div class="item-title">
                                    腾讯云 Serverless
                                </div>
                            </a><a class="item" href="/dromara/go-view/open_sca"><img
                                    src="https://cn-assets.gitee.com/assets/open_sca/logo-9049ced662b2f9936b8001e6f9cc4952.png"
                                    alt="Logo">
                                <div class="item-title">
                                    悬镜安全
                                </div>
                            </a><a class="item" target="_blank" href="https://help.gitee.com/devops/connect/Aliyun-SAE"><img
                                    src="https://cn-assets.gitee.com/assets/SAE-f3aa9366a1e2b7fff4747402eb8f10c3.png"
                                    alt="Sae">
                                <div class="item-title">
                                    阿里云 SAE
                                </div>
                            </a><a class="item" id="update-codeblitz-link" target="_blank"
                                   href="https://codeblitz.cloud.alipay.com/gitee/dromara/go-view/tree/master/"><img
                                    style="width:100px;margin-top:4px"
                                    src="https://cn-assets.gitee.com/assets/Codeblitz-8824e38875a106e16e29ff57ec977b08.png"
                                    alt="Codeblitz">
                                <div class="item-title">
                                    Codeblitz
                                </div>
                            </a>
                                <button class="ui orange basic button quit-button" id="quiting-button"> 我知道了，不再自动展开
                                </button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <script>
            $('.git-project-nav .ui.dropdown').dropdown({action: 'nothing'});
            var gitee_reward_config = JSON.parse(localStorage.getItem('gitee_reward_config') || null) || false
            var $settingText = $('.setting-text')
            // 如果没有访问过
            if (!gitee_reward_config) $settingText.addClass('red-dot')
            $('.git-project-service').dropdown({
                on: 'click',
                action: 'nothing',
                onShow: function () {
                    const branch = 'master'
                    let newUrl = `https://codeblitz.cloud.alipay.com/gitee/dromara/go-view/tree/`
                    const url = decodeURIComponent(window.location.pathname);
                    const startIndex = url.indexOf('master');
                    if (startIndex !== -1) {
                        newUrl = newUrl + url.substring(startIndex); // 从分支名开始截取
                    } else {
                        newUrl = newUrl + branch
                    }
                    const linkElement = document.getElementById("update-codeblitz-link");
                    linkElement.setAttribute("href", newUrl);
                },
            })
        </script>
        <style>
            .git-project-nav i.checkmark.icon {
                color: green;
            }

            #quiting-button {
                display: none;
            }

            .git-project-nav .dropdown .menu.hidden:after {
                visibility: hidden !important;
            }
        </style>
        <script>
            isSignIn = false
            isClickGuide = false
            $('#git-versions.dropdown').dropdown();
            $.ajax({
                url: "/dromara/go-view/access/add_access_log",
                type: "GET"
            });
            $('#quiting-button').on('click', function () {
                $('.git-project-service').click();
                if (isSignIn) {
                    $.post("/projects/set_service_guide")
                }
                $.cookie("Serve_State", true, {expires: 3650, path: '/'})
                $('#quiting-button').hide();
            });
            if (!(isClickGuide || $.cookie("Serve_State") == 'true')) {
                $('.git-project-service').click()
                $('#quiting-button').show()
            }
        </script>
    </div>
    <div class="ui container">
        <div class="register-guide">
            <div class="register-container">
                <div class="regist">
                    加入 Gitee
                </div>
                <div class="description">
                    与超过 1200万 开发者一起发现、参与优秀开源项目，私有仓库也完全免费 ：）
                </div>
                <a class="ui orange button free-registion" sa_evt="register_show" sa_referrer_url=""
                   sa_referrer_action="免费加入" sa_referrer_type="仓库页面" href="/signup?from=project-guide">免费加入</a>
                <div class="login">
                    已有帐号？ <a href="/login?from=project-guide">立即登录</a>
                </div>
            </div>
        </div>
        <div class="git-project-content-wrapper">
            <div class="ui grid" id="project-wrapper">
                <div class="twelve wide column">
                    <div id="git-project-search-panel" style="display: none;"><a href="javascript: void(0);"
                                                                                 id="back-to-list"> <i
                            class="angle left icon"></i> 返回 </a>
                        <div class="ui icon input search-input"><i class="iconfont icon-search icon"></i>
                            <input id="search-name" maxlength="40" placeholder="搜索文件" type="text">
                        </div>
                    </div>
                    <div class="git-project-content" id="git-project-content">
                        <div class="git-project-desc-wrapper">
                            <script>
                                $('.git-project-desc-wrapper .ui.dropdown').dropdown();
                                if (false) {
                                    gon.project_new_blob_path = "/dromara/go-view/new/master"
                                    bindShowModal({
                                        el: $('.no-license .project-license__create'),
                                        complete: function (data, modal) {
                                            if (!data.haveNoChoice && !data.data) {
                                                Flash.show('请选择一项开源许可证')
                                            } else {
                                                location.href = gon.project_new_blob_path + '?license=' + data.data
                                            }
                                        },
                                        skip: function () {
                                            location.href = gon.project_new_blob_path + '?license'
                                        }
                                    });
                                }

                                $(".project-admin-action-box .reject").click(function () {
                                    var reason = $('[name=review-reject-reason]').val();
                                    if (!reason) {
                                        Flash.error('请选择不通过理由')
                                        return
                                    }
                                    $.ajax({
                                        type: 'POST',
                                        url: "/admin/shumei_content/shumei_check/reject_project_public",
                                        data: {
                                            reason: reason,
                                            status: 'rejected',
                                            project_id: 19705367
                                        },
                                        success: function (result) {
                                            if (result.status == 'success') {
                                                window.location.reload();
                                            } else {
                                                Flash.error(result.message)
                                            }
                                        }
                                    })
                                })

                                $(".project-admin-action-box .approve").click(function () {

                                    $.ajax({
                                        type: 'POST',
                                        url: "/admin/shumei_content/shumei_check/reject_project_public",
                                        data: {
                                            status: 'approved',
                                            project_id: 19705367
                                        },
                                        success: function (result) {
                                            if (result.status == 'success') {
                                                window.location.reload();
                                            } else {
                                                Flash.error(result.message)
                                            }
                                        }
                                    })
                                })

                                $(".project-admin-action-box .waiting").click(function () {

                                    $.ajax({
                                        type: 'POST',
                                        url: "/admin/shumei_content/shumei_check/reject_project_public",
                                        data: {
                                            status: 'waiting',
                                            project_id: 19705367
                                        },
                                        success: function (result) {
                                            if (result.status == 'success') {
                                                window.location.reload();
                                            } else {
                                                Flash.error(result.message)
                                            }
                                        }
                                    })
                                })

                                $('i.help.circle.icon').popup({
                                    popup: '.no-license .ui.popup',
                                    position: 'right center'
                                });

                                $('#remove-no-license-message').on('click', function () {
                                    $.cookie("skip_repo_no_license_message_19705367", 'hide', {expires: 365});
                                    $('#user-no-license-message').hide();
                                    return;
                                });
                            </script>
                        </div>
                        <div class="git-project-bread" id="git-project-bread">
                            <div class="ui horizontal list mr-1">
                                <div class="item git-project-branch-item">
                                    <input type="hidden" name="path" id="path" value="">
                                    <div class="ui top left pointing dropdown gradient button dropdown-has-tabs"
                                         id="git-project-branch">
                                        <input type="hidden" name="ref" id="ref" value="master">
                                        <div class="default text">
                                            master
                                        </div>
                                        <i class="dropdown icon"></i>
                                        <div class="menu">
                                            <div class="ui left icon input"><i
                                                    class="iconfont icon-search dropdown-search-icon"></i>
                                                <input class="search-branch" placeholder="搜索分支" type="text">
                                            </div>
                                            <div class="tab-menu project-branch-tab-menu">
                                                <div class="tab-menu-actions d-align-center">
                                                    <div class="tab-menu-action" data-tab="branches"><a
                                                            class="ui link button"
                                                            href="/dromara/go-view/branches">管理</a>
                                                    </div>
                                                    <div class="tab-menu-action" data-tab="tags"><a
                                                            class="ui link button" href="/dromara/go-view/tags">管理</a>
                                                    </div>
                                                </div>
                                                <div class="tab-menu-item" data-placeholder="搜索分支" data-tab="branches">
                                                    分支 (5)
                                                </div>
                                                <div class="tab-menu-item" data-placeholder="搜索标签" data-tab="tags">
                                                    标签 (48)
                                                </div>
                                            </div>
                                            <div class="tab scrolling menu" data-tab="branches" id="branches_panel">
                                                <div data-value="master" class="item">
                                                    <span>master</span> <i
                                                        class="iconfont icon-shieldlock protected-branch-popup"
                                                        data-title="受保护分支" data-content="保护规则： master"></i>
                                                </div>
                                                <div data-value="master-fetch" class="item">
                                                    <span>master-fetch</span> <i
                                                        class="iconfont icon-shieldlock protected-branch-popup"
                                                        data-title="受保护分支" data-content="保护规则： master-fetch"></i>
                                                </div>
                                                <div data-value="master-fetch-dev" class="item">
                                                    <span>master-fetch-dev</span>
                                                </div>
                                                <div data-value="dev" class="item">
                                                    <span>dev</span>
                                                </div>
                                                <div data-value="feat-unify-test" class="item">
                                                    <span>feat-unify-test</span>
                                                </div>
                                            </div>
                                            <div class="tab scrolling menu" data-tab="tags" id="tags_panel">
                                                <div class="item" data-value="v2.2.8">
                                                    v2.2.8
                                                </div>
                                                <div class="item" data-value="v1.3.1">
                                                    v1.3.1
                                                </div>
                                                <div class="item" data-value="v2.2.7">
                                                    v2.2.7
                                                </div>
                                                <div class="item" data-value="v1.3.0">
                                                    v1.3.0
                                                </div>
                                                <div class="item" data-value="v2.2.6">
                                                    v2.2.6
                                                </div>
                                                <div class="item" data-value="v1.2.9">
                                                    v1.2.9
                                                </div>
                                                <div class="item" data-value="v2.2.5">
                                                    v2.2.5
                                                </div>
                                                <div class="item" data-value="v1.2.8">
                                                    v1.2.8
                                                </div>
                                                <div class="item" data-value="v1.2.7">
                                                    v1.2.7
                                                </div>
                                                <div class="item" data-value="v2.2.4">
                                                    v2.2.4
                                                </div>
                                                <div class="item" data-value="v2.2.3">
                                                    v2.2.3
                                                </div>
                                                <div class="item" data-value="v1.2.6">
                                                    v1.2.6
                                                </div>
                                                <div class="item" data-value="v2.2.2">
                                                    v2.2.2
                                                </div>
                                                <div class="item" data-value="v1.2.5">
                                                    v1.2.5
                                                </div>
                                                <div class="item" data-value="v2.2.0">
                                                    v2.2.0
                                                </div>
                                                <div class="item" data-value="v1.2.3">
                                                    v1.2.3
                                                </div>
                                                <div class="item" data-value="v2.1.9">
                                                    v2.1.9
                                                </div>
                                                <div class="item" data-value="v1.2.2">
                                                    v1.2.2
                                                </div>
                                                <div class="item" data-value="v2.1.8">
                                                    v2.1.8
                                                </div>
                                                <div class="item" data-value="v1.2.1">
                                                    v1.2.1
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                    <style>
                                        .iconfont.icon-shieldlock {
                                            color: #8c92a4;
                                        }

                                        .dropdown-search-icon {
                                            position: absolute;
                                            top: 8px;
                                            left: 11px;
                                        }
                                    </style>
                                    <style>
                                        #git-project-branch .project-branch-tab-menu {
                                            width: 400px !important;
                                            margin: 0 16px !important;
                                            padding-left: 0px !important;
                                            padding-right: 0px !important;
                                            border-bottom: 1px solid #dfe3e9 !important;
                                        }

                                        #git-project-branch .tab-menu-actions {
                                            position: absolute;
                                            right: 0px !important;
                                            bottom: 0.357em;
                                        }

                                        #git-project-branch .tab-menu-action {
                                            position: relative !important;
                                            right: 0px !important;
                                            bottom: 0px !important;
                                        }

                                        #git-project-branch .menu::after {
                                            display: none !important;
                                        }
                                    </style>
                                    <script>
                                        var $branchesDropdown = $('#branches_panel');
                                        var $tagsDropdown = $('#tags_panel');
                                        var $searchNameInput = $('.search-branch');
                                        var concurrentRequestLock = false;
                                        var filterXSS = window.filterXSS;
                                        var search_text = "";
                                        var branch_page_number = 1;
                                        var branch_total_pager = Math.ceil(5 / 20) || 1

                                        var flag_is_loading = false;
                                        var flag_page_number = 1;
                                        var flag_total_pager = Math.ceil(48 / 20) || 1

                                        $branchesDropdown.scroll(function () {
                                            var branchesPanel = document.getElementById('branches_panel');
                                            var numOfBranches = $branchesDropdown.children().length;
                                            if (branchesPanel.clientHeight + branchesPanel.scrollTop + 37 > branchesPanel.scrollHeight && numOfBranches < 5) {
                                                debounceLoadMoreBranches.call();
                                            }
                                        });

                                        function resetFlagVal() {
                                            flag_is_loading = false;
                                            flag_page_number = 1;
                                            flag_total_pager = 1;

                                            concurrentRequestLock = false
                                            search_text = "";
                                            branch_page_number = 1;
                                            branch_total_pager = 1
                                        }

                                        $searchNameInput.on('input', window.globalUtils.debouce(function (e) {
                                            resetFlagVal()
                                            var $currentTab = $('.tab-menu-action.active');
                                            var numOfBranches = $branchesDropdown.children().length;
                                            var searchWord = $searchNameInput.val().trim();
                                            search_text = searchWord
                                            if ($currentTab.data('tab') === 'branches') {
                                                if (searchWord !== "") {
                                                    loadData(searchWord, 1);
                                                } else {
                                                    loadData();
                                                }
                                            }
                                            var numOfTags = $tagsDropdown.children().length;
                                            if ($currentTab.data('tab') === 'tags') {
                                                if (searchWord !== "") {
                                                    fetchTags(searchWord, 1);
                                                } else {
                                                    fetchTags();
                                                }
                                            }
                                        }, 500));

                                        function toggleNoResultView($popPanel) {
                                            let no_data_html = `<div class='mt-1 mb-1 d-flex-center'> <span>暂无数据</span> </div>`
                                            $popPanel.append(no_data_html)
                                        }

                                        var debounceLoadMoreBranches = window.globalUtils.debouce(function () {
                                            if (concurrentRequestLock) return;
                                            branch_page_number += 1;
                                            if (branch_page_number > branch_total_pager) return;
                                            loadData(search_text, branch_page_number);
                                        }, 350);

                                        function loadData(search, page) {
                                            if (concurrentRequestLock) {
                                                return;
                                            }
                                            concurrentRequestLock = true;

                                            var searchParams = search || "";
                                            var pageParams = page || 1;
                                            $.ajax({
                                                url: "/" + gon.user_project + "/branches/names.json",
                                                type: 'GET',
                                                data: {
                                                    search: searchParams,
                                                    page: pageParams,
                                                },
                                                dataType: 'json',
                                                success: function (data) {
                                                    branch_total_pager = data.total_pages;
                                                    var html = '';

                                                    if (pageParams === 1) {
                                                        $branchesDropdown.empty();
                                                    }
                                                    data.branches.forEach(function (branch) {
                                                        var protectRule = '';
                                                        var branchName = filterXSS(branch.name);
                                                        if (branch.branch_type.value === 1) {
                                                            var rule = filterXSS(branch.protection_rule.wildcard);
                                                            protectRule = `<i
                class="iconfont icon-shieldlock protected-branch-popup"
                data-title="受保护分支"
                data-content='保护规则： ${rule}'
              >
              </i>`
                                                        }
                                                        html += `<div data-value='${branchName}' class="item">
                    <span>${branchName}</span> ${protectRule}
                    </div>`
                                                    });
                                                    $branchesDropdown.append(html);
                                                    $('.protected-branch-popup').popup()
                                                    if (pageParams === 1 && data.count === 0) {
                                                        toggleNoResultView($branchesDropdown);
                                                    }
                                                },
                                                complete: function () {
                                                    concurrentRequestLock = false;
                                                }
                                            });
                                        }


                                        $tagsDropdown.scroll(function () {
                                            var tagsPanel = document.getElementById('tags_panel');
                                            var numOfTags = $tagsDropdown.children().length;
                                            if (tagsPanel.clientHeight + tagsPanel.scrollTop + 37 > tagsPanel.scrollHeight && numOfTags < 48) {
                                                debounceLoadMore.call();
                                            }
                                        });
                                        var debounceLoadMore = window.globalUtils.debouce(function () {
                                            if (flag_is_loading) return;
                                            flag_page_number += 1;
                                            if (flag_page_number > flag_total_pager) return;
                                            fetchTags(search_text, flag_page_number);
                                        }, 350);

                                        function fetchTags(search, page) {
                                            var searchParams = search || "";
                                            var pageParams = page || 1;

                                            if (flag_is_loading) return;
                                            flag_is_loading = true;

                                            $.ajax({
                                                url: "/" + gon.user_project + "/tags/names.json",
                                                data: {
                                                    search: searchParams,
                                                    page: pageParams,
                                                },
                                                type: "GET",
                                                xhrFields: {
                                                    withCredentials: true,
                                                },
                                                success: function (data) {
                                                    flag_total_pager = data.total_pages;
                                                    if (pageParams === 1) {
                                                        $tagsDropdown.html('');
                                                    }
                                                    data.tags.forEach((tag) => {
                                                        const itemDiv = document.createElement('div');
                                                        itemDiv.classList.add('item');
                                                        itemDiv.setAttribute('data-value', tag.name);
                                                        itemDiv.innerText = window.filterXSS(tag.name);
                                                        $tagsDropdown.append(itemDiv)
                                                    });
                                                    if (pageParams === 1 && data.count === 0) {
                                                        toggleNoResultView($tagsDropdown);
                                                    }
                                                },
                                                error: function () {
                                                },
                                                complete: function () {
                                                    flag_is_loading = false;
                                                },
                                            });
                                        }

                                        $('.project-branch-tab-menu').on('click', '.tab-menu-item', function (e) {
                                            var $currentTab = $(this).data('tab')
                                            if ($currentTab === 'branches') {
                                                $searchNameInput.val('')
                                                search_text = '';
                                                loadData()
                                            }
                                            if ($currentTab === 'tags') {
                                                $searchNameInput.val('')
                                                search_text = '';
                                                fetchTags();
                                            }
                                        })
                                    </script>
                                    <script>
                                        $(function () {
                                            Gitee.initTabsInDropdown($('#git-project-branch').dropdown({
                                                fullTextSearch: true,
                                                selectOnKeydown: false,
                                                action: function (text, value, el) {
                                                    var oItemOrInitObject = el[0] || el
                                                    var isNotSelect = oItemOrInitObject.dataset.tab && oItemOrInitObject.dataset.tab === 'branches'
                                                    if (isNotSelect) {
                                                        console.warn("You didn't choose a branch")
                                                        return
                                                    }
                                                    var path = $('#path').val();
                                                    var href = ['/dromara/go-view/tree', encodeURIComponent(value), path].join('/');
                                                    window.location.href = href;
                                                    return true
                                                },
                                                onNoResults: function (searchTerm) {
                                                    //未找到结果
                                                    return true
                                                },
                                            }));
                                            $('.protected-branch-popup').popup()
                                        })
                                    </script>
                                </div>
                            </div>
                            <div class="git-project-right-actions pull-right">
                                <div class="ui orange button" id="btn-dl-or-clone">
                                    克隆/下载 <i class="dropdown icon"></i>
                                </div>
                                <div class="ui small modal" id="git-project-download-panel"><i
                                        class="iconfont icon-close close"></i>
                                    <div class="header">
                                        克隆/下载
                                    </div>
                                    <div class="content">
                                        <div class="ui secondary pointing menu mb-2 menu-container"><a
                                                class="item active" data-text="" data-type="http"
                                                data-url="https://gitee.com/dromara/go-view.git">HTTPS</a> <a
                                                class="item" data-text="" data-type="ssh"
                                                data-url="git@gitee.com:dromara/go-view.git">SSH</a> <a class="item"
                                                                                                        data-text=""
                                                                                                        data-type="svn"
                                                                                                        data-url="svn://gitee.com/dromara/go-view">SVN</a>
                                            <a class="item" data-text="" data-type="svn_ssh"
                                               data-url="svn+ssh://gitee.com/dromara/go-view">SVN+SSH</a> <a
                                                    class="ui basic orange button button-box unlogin-download-btn"
                                                    sa_evt="loginInform_show" sa_referrer_url=""
                                                    sa_referrer_action="克隆/下载" sa_referrer_type="仓库页面"
                                                    href="javascript:void(0);"><i class="icon download"></i> 下载ZIP </a>
                                            <div class="ui custom popup popup">
                                                <div class="popup-container actions">
                                                    <div class="content">
                                                        该操作需登录 Gitee 帐号，请先登录后再操作。
                                                    </div>
                                                    <a class="ui orange button ok icon"
                                                       href="/login?from=download_repository_zip">立即登录 </a><a
                                                        class="ui blank button cancel"
                                                        href="/signup?from=download_repository_zip">没有帐号，去注册 </a>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="ui fluid right labeled small input download-url-panel mb-2">
                                            <input type="text" name="project_url_clone" id="project_url_clone"
                                                   value="https://gitee.com/dromara/go-view.git"
                                                   onclick="focus();select()" readonly>
                                            <div class="ui basic label copy-icon-box"><i
                                                    class="icon iconfont icon-clone mr-0 btn-copy-clone"
                                                    data-clipboard-target="#project_url_clone"
                                                    id="btn-copy-project_clone_url1"></i>
                                            </div>
                                        </div>
                                        <div class="tip-box mb-2">
                                            提示
                                        </div>
                                        <div class="mb-1 clone-url-title">
                                            下载代码请复制以下命令到终端执行
                                        </div>
                                        <div class="ui fluid right labeled small input download-url-panel mb-2">
                                            <input type="text" name="project_clone_url" id="project_clone_url"
                                                   value="https://gitee.com/dromara/go-view.git"
                                                   onclick="focus();select()" readonly>
                                            <div class="ui basic label copy-icon-box"><i
                                                    class="icon iconfont icon-clone mr-0 btn-copy-clone"
                                                    data-clipboard-target="#project_clone_url"
                                                    id="btn-copy-project_clone_url"></i>
                                            </div>
                                        </div>
                                        <div class="ui fluid right labeled warning-text forbid-warning-text">
                                        </div>
                                        <div class="http-ssh-item mb-2">
                                            <div>
                                                为确保你提交的代码身份被 Gitee 正确识别，请执行以下命令完成配置
                                            </div>
                                            <div class="textarea-box mt-2"> <textarea class="textarea-content-box"
                                                                                      id="global-config-clone" readonly>git config --global user.name userName
git config --global user.email userEmail</textarea> <i class="icon iconfont icon-clone mr-2 btn-copy-clone text-dark"
                                                       data-clipboard-target="#global-config-clone"
                                                       id="btn-copy-global-config"></i>
                                            </div>
                                        </div>
                                        <div class="ssh-item item-panel-box">
                                            <div class="mb-2">
                                                初次使用 SSH 协议进行代码克隆、推送等操作时，需按下述提示完成 SSH 配置
                                            </div>
                                            <div class="mb-1"><span>1</span> 生成 RSA 密钥
                                            </div>
                                            <div class="ui fluid right labeled small input mb-2">
                                                <input type="text" name="ssh_keygen_clone" id="ssh_keygen_clone"
                                                       value="ssh-keygen -t rsa" onclick="focus();select()" readonly>
                                                <div class="ui basic label copy-icon-box"><i
                                                        class="icon iconfont icon-clone mr-0 btn-copy-clone"
                                                        data-clipboard-target="#ssh_keygen_clone"
                                                        id="btn-copy-ssh_keygen"></i>
                                                </div>
                                            </div>
                                            <div class="mb-1"><span>2</span> 获取 RSA 公钥内容，并配置到<a href="/profile/sshkeys"
                                                                                                target="_blank">
                                                SSH公钥 </a> 中
                                            </div>
                                            <div class="ui fluid right labeled small input mb-2">
                                                <input type="text" name="id_rsa_clone" id="id_rsa_clone"
                                                       value="cat ~/.ssh/id_rsa.pub" onclick="focus();select()"
                                                       readonly>
                                                <div class="ui basic label copy-icon-box"><i
                                                        class="icon iconfont icon-clone mr-0 btn-copy-clone"
                                                        data-clipboard-target="#id_rsa_clone" id="btn-copy-d_rsa"></i>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="svn-item item-panel-box">
                                            <div class="mb-1 mt-2">
                                                在 Gitee 上使用 SVN，请访问<a
                                                    href="https://help.gitee.com/enterprise/code-manage/%E4%BB%A3%E7%A0%81%E6%89%98%E7%AE%A1/%E4%BB%A3%E7%A0%81%E4%BB%93%E5%BA%93/Gitee%20SVN%E6%94%AF%E6%8C%81"
                                                    target="_blank"> 使用指南 </a>
                                            </div>
                                        </div>
                                        <div class="http-item item-panel-box">
                                            <div class="mb-2 mt-2">
                                                使用 HTTPS 协议时，命令行会出现如下账号密码验证步骤。基于安全考虑，Gitee 建议<a
                                                    href="/profile/personal_access_tokens" target="_blank">
                                                配置并使用私人令牌 </a>替代登录密码进行克隆、推送等操作
                                            </div>
                                            <div>
                                                Username for 'https://gitee.com': userName
                                            </div>
                                            <div class="mb-1"><span>Password for 'https://userName@gitee.com':</span>
                                                <span>#</span> <span> 私人令牌 </span>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <style>
                                    #git-project-download-panel {
                                        top: 90px !important;
                                    }

                                    #git-project-download-panel input {
                                        color: #40485b !important;
                                    }

                                    #git-project-download-panel .textarea-box {
                                        width: 100%;
                                        height: 60px;
                                        color: #9d9d9d;
                                        border-radius: 2px;
                                        background-color: #F5F5F5 !important;
                                        display: -webkit-box;
                                        display: -ms-flexbox;
                                        display: flex;
                                        -webkit-box-align: center;
                                        -ms-flex-align: center;
                                        align-items: center;
                                    }

                                    #git-project-download-panel .menu-container {
                                        font-weight: bold;
                                        border-color: rgba(0, 0, 0, 0.1) !important;
                                        border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
                                    }

                                    #git-project-download-panel .menu-container .item {
                                        padding: 7px 12px !important;
                                    }

                                    #git-project-download-panel .hr-item {
                                        color: rgba(39, 41, 43, 0.15) !important;
                                    }

                                    #git-project-download-panel .textarea-content-box {
                                        width: 100%;
                                        height: 60px;
                                        resize: none;
                                        border: 0px !important;
                                        background-color: #F5F5F5 !important;
                                        color: #40485b !important;
                                    }

                                    #git-project-download-panel .btn-copy-clone {
                                        cursor: pointer;
                                        color: rgba(0, 0, 0, 0.87) !important;
                                    }

                                    #git-project-download-panel .copy-icon-box {
                                        background-color: #F5F5F5 !important;
                                        border-left: 0px !important;
                                    }

                                    #git-project-download-panel .button-box {
                                        border: 0px !important;
                                        float: right !important;
                                        padding-right: 0 !important;
                                    }

                                    #git-project-download-panel .tip-box {
                                        border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
                                        padding-bottom: 4px;
                                        font-weight: 700;
                                    }

                                    #git-project-download-panel .popup-container {
                                        padding: 8px 12px 4px 12px;
                                        text-align: center;
                                        font-size: 14px;
                                    }

                                    #git-project-download-panel .popup-container .ok {
                                        margin: 12px auto;
                                        width: 25%;
                                        min-width: 125px;
                                        display: block;
                                    }

                                    #git-project-download-panel .popup-container .cancel {
                                        margin-left: 0;
                                    }
                                </style>
                                <script>
                                    $(function () {
                                        var $btnClone = $('#btn-dl-or-clone')
                                        var $modalDownload = $('#git-project-download-panel');
                                        var $input = $('#project_clone_url')
                                        var $inputUrl = $('#project_url_clone')
                                        var cloneUrlTitle = $('.clone-url-title')

                                        $('#btn-dl-or-clone').on('click', function (e) {
                                            e.preventDefault();
                                            $modalDownload.modal('show');
                                        })

                                        $modalDownload.find('.menu > .item').on('click', function (e) {
                                            var $item = $(this).addClass('active');
                                            $item.siblings().removeClass('active');
                                            var dataUrl = $item.attr('data-url');
                                            var cloneUrl = $item.attr('data-url');
                                            var dataType = $item.attr('data-type')
                                            var cloneToLocal = '下载代码请复制以下命令到终端执行'
                                            if (dataType == 'http') {
                                                $modalDownload.find('.http-item').show();
                                                $('.content > .item-panel-box:not(.http-item)').hide();
                                                $modalDownload.find('.http-ssh-item').show();
                                                cloneUrl = 'git clone ' + dataUrl
                                            } else if (dataType == 'ssh') {
                                                $modalDownload.find('.ssh-item').show();
                                                $('.content > .item-panel-box:not(.ssh-item)').hide();
                                                $modalDownload.find('.http-ssh-item').show();
                                                cloneUrl = 'git clone ' + dataUrl
                                            } else if (dataType == 'svn') {
                                                $('.content > .item-panel-box:not(.svn-item)').hide();
                                                $modalDownload.find('.svn-item').show();
                                                $modalDownload.find('.http-ssh-item').hide();
                                                cloneUrl = 'svn checkout ' + dataUrl
                                            } else {
                                                $('.content > .item-panel-box:not(.svn-item)').hide();
                                                $modalDownload.find('.svn-item').show();
                                                $modalDownload.find('.http-ssh-item').hide();
                                                cloneUrl = 'svn checkout ' + dataUrl
                                            }
                                            if (dataUrl) {
                                                $modalDownload.find('.download-url-panel').show();
                                                $input.val(cloneUrl);
                                                $inputUrl.val(dataUrl)
                                                cloneUrlTitle.show();
                                                $modalDownload.find('.forbid-warning-text').html('');
                                            } else {
                                                $modalDownload.find('.download-url-panel').hide();
                                                //$modalDownload.find('.svn-item').hide();
                                                cloneUrlTitle.hide();
                                                $modalDownload.find('.forbid-warning-text').html($item.attr('data-text') || '');
                                            }
                                            $.cookie('remote_way', $item.attr('data-type'), {expires: 365, path: '/'});
                                        }).filter('[data-type="' + ($.cookie('remote_way') || 'http') + '"]').trigger('click');

                                        $('.btn-copy-clone').popup({
                                            content: '点击复制',
                                        }).on('click', function (e) {
                                            e.stopPropagation();
                                            return false;
                                        }).each(function (_, btnCopy) {
                                            var $btnCopy = $(btnCopy);
                                            new Clipboard(btnCopy).on('success', function () {
                                                $btnCopy.popup('destroy').popup({
                                                    content: '已复制',
                                                    on: 'manual'
                                                }).popup('show');
                                                setTimeout(function () {
                                                    $btnCopy.popup('destroy').popup({
                                                        content: '点击复制'
                                                    });
                                                }, 2000);
                                            });
                                        });
                                        var $downloadBtn = $('.unlogin-download-btn')
                                        var $popupContainer = $('.popup-container')
                                        $downloadBtn.popup({
                                            popup: $('.custom.popup'),
                                            position: 'bottom right',
                                        }).on('click', function (e) {
                                            $downloadBtn.popup('destroy').popup({
                                                popup: $('.custom.popup'),
                                                on: 'manual',
                                                position: 'bottom right',
                                            }).popup('show');
                                            setTimeout(function () {
                                                $downloadBtn.popup('hide');
                                            }, 2000);

                                        })
                                    })
                                </script>
                            </div>
                            <div class="d-inline pull-right" id="git-project-root-actions">
                                <div class="ui horizontal list repo-action-list d-flex d-align-center repo-action-list-right">
                                    <div class="item search-box-container">
                                        <div class="ui icon input search-input" id="search-box">
                                            <input class="search-file-name" id="search-file-name" maxlength="40"
                                                   placeholder="搜索文件" type="text">
                                        </div>
                                        <a class="d-flex d-align-center" id="search-file-btn"> <span class="iconify"
                                                                                                     data-icon="gitee:search"
                                                                                                     style="font-size: 16px;color:#979CAC;margin-right:10px"></span>
                                        </a>
                                        <div class="filter-file-container" style="display: none;"></div>
                                    </div>
                                    <div class="item plus-box">
                                        <div class="ui pointing right top dropdown" id="git-project-file"><span
                                                class="iconify" data-icon="gitee:plus"
                                                style="font-size: 16px;color:#979CAC"></span>
                                            <div class="menu repo-dropdown-box pt-1 pb-1"><a title="新建文件"
                                                                                             id="new_file_bread"
                                                                                             class="item repo-action d-flex d-align-center"
                                                                                             href="/dromara/go-view/new/master"><span
                                                    class="iconify" data-icon="gitee:file"
                                                    style="font-size: 16px;color:#979CAC;margin-right:12px"></span>
                                                <span> 新建文件 </span> </a><a title="新建 Diagram 文件"
                                                                           class="item repo-action d-flex d-align-center"
                                                                           href="/dromara/go-view/new/master?ext=drawio"><span
                                                    class="iconify" data-icon="gitee:lan"
                                                    style="font-size: 16px;color:#979CAC;margin-right:12px"></span>
                                                <span> 新建 Diagram 文件 </span> </a>
                                                <div class="disabled item d-flex d-align-center"><span class="iconify"
                                                                                                       data-icon="gitee:folder-sub"
                                                                                                       style="font-size: 16px;color:#979CAC;margin-right:12px"></span>
                                                    <span> 新建子模块 </span>
                                                </div>
                                                <div class="disabled item d-flex d-align-center"><span class="iconify"
                                                                                                       data-icon="gitee:upload"
                                                                                                       style="font-size: 16px;color:#979CAC;margin-right:12px"></span>
                                                    <span> 上传文件 </span>
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="item toschina-content__hidden webIDE-box" data-content="Web IDE"><a
                                            class="ui d-flex d-align-center webide" target="_blank"
                                            href="/-/ide/project/dromara/go-view/edit/master/-/"><span class="iconify"
                                                                                                       data-icon="gitee:computer"
                                                                                                       style="font-size: 16px;color:#979CAC;margin-right:12px"></span>
                                    </a>
                                    </div>
                                </div>
                                <script>
                                    $('#git-project-file').dropdown({
                                        action: 'hide',
                                        onHide: function () {
                                            $('.plus-box').removeClass('click-active')
                                        },
                                        onShow: function () {
                                            $('.plus-box').addClass('click-active')
                                        }
                                    });
                                </script>
                                <script>
                                    $('.webIDE-box').popup()
                                </script>
                                <script src="https://cn-assets.gitee.com/assets/file_search/app-7488efdce7782c80c4936145b910d07e.js"></script>
                            </div>
                            <div class="breadcrumb_path path-breadcrumb-contrainer" id="git-project-breadcrumb">
                            </div>
                            <div class="ui horizontal list repo-action-list branches-tags" style="">
                                <div class="item"><a class="ui blank button" href="/dromara/go-view/branches"><i
                                        class="iconfont icon-branches"></i> 分支 5 </a>
                                </div>
                                <div class="item mr-3"><a class="ui blank button" href="/dromara/go-view/tags"><i
                                        class="iconfont icon-tag"></i> 标签 48 </a>
                                </div>
                            </div>
                        </div>
                        <script src="https://cn-assets.gitee.com/webpacks/parse_blob_form_scheme-b72b6a07c9684da96807.bundle.js"></script>
                        <script>
                            if (window.gon.locale == 'en')
                                $('.branches-tags').css('margin-top', '12px')
                            // 仓库页面切换路径时: 刷新 yaml 错误检查
                            $(window).on('pjax-complete:file-show', function () {
                                window.parseBlobFormScheme && window.parseBlobFormScheme($('.js-blob-data').data('blob'));
                            });
                        </script>
                        <style>
                            .ui.dropdown .menu > .header {
                                text-transform: none;
                            }
                        </style>
                        <script>
                            $(function () {
                                var $tip = $('#apk-download-tip');
                                if (!$tip.length) {
                                    return;
                                }
                                $tip.find('.btn-close').on('click', function () {
                                    $tip.hide();
                                });
                            });
                            (function () {
                                function pathAutoRender() {
                                    var $parent = $('#git-project-bread'),
                                        $child = $('#git-project-bread').children('.ui.horizontal.list'),
                                        mainWidth = 0;
                                    $child.each(function (i, item) {
                                        mainWidth += $(item).width()
                                    });
                                    $('.breadcrumb.path.fork-path').remove();
                                    if (mainWidth > 995) {
                                        $('#path-breadcrumb').hide();
                                        $parent.append('<div class="ui breadcrumb path fork-path">' + $('#path-breadcrumb').html() + '<div/>')
                                    } else {
                                        $('#path-breadcrumb').show();
                                    }
                                }

                                window.pathAutoRender = pathAutoRender;
                                pathAutoRender();
                            })();
                        </script>
                        <div class="branch-diff-notice-bar hide">
                            <div class="left-section"></div>
                            <div class="right-section">
                                <div class="ui button gradient contribute">
                                    贡献代码 <i class="dropdown icon"></i>
                                </div>
                                <div class="ui button gradient branch-sync hide">
                                    同步代码 <i class="dropdown icon"></i>
                                </div>
                            </div>
                        </div>
                        <div class="ui popup contribute branch-diff-pop-panel contribute-pop">
                            <div class="notice-title"></div>
                            <div class="notice-sub-title"></div>
                            <div class="notice-content"></div>
                            <a class="ui button orange fluid disabled create-pr" href="/" target="_blank"> 创建 Pull
                                Request </a>
                        </div>
                        <div class="ui popup branch-diff-pop-panel branch-sync-pop">
                            <div class="notice-title"></div>
                            <div class="notice-content"></div>
                            <div class="known-more"><a href="/help/articles/4395" target="_blank"> 了解更多 </a>
                            </div>
                            <div class="btn-group">
                                <div class="ui button basic red discard-btn hide"></div>
                                <a class="ui button orange basic diff-btn hide" href="/" target="_blank"> 对比差异 </a> <a
                                    class="ui button gradient pr-sync-btn hide" href="/" target="_blank"> 通过 Pull
                                Request 同步 </a>
                                <div class="ui buttons basic dropdown-group-btn hide">
                                    <div class="ui button branch-sync-btn">
                                        同步更新到分支
                                    </div>
                                    <div class="ui button dropdown dropdown-create-pr"><i class="icon dropdown"></i>
                                        <div class="menu">
                                            <div class="disabled item">
                                                <div>
                                                    通过 Pull Request 同步
                                                    <div class="text-muted fs-12 mt-1">
                                                        将会在向当前分支创建一个 Pull
                                                        <br>Request，合入后将完成同步
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        <script>
                            (function () {
                                const i18_compare_current_branch = `当前分支与 <a href="URL">BRANCH</a> 相比`
                                const i18_branch_ahead_commit = `，领先 <a href="URL">NUM 个 Commit</a>`
                                const i18_branch_behind_commit = `，落后 <a href="URL">NUM 个 Commit</a>`

                                const i18_contribute_ahead_title = `当前分支比 BRANCH 领先了 NUM 次提交。`
                                const i18_contribute_pr_create = `创建一个 Pull Request 贡献代码。`
                                const i18_contribute_has_pr = `已创建了 Pull Request`
                                const i18_contribute_no_ahead = `这个分支没有领先于 BRANCH 的代码提交。`

                                const i18_branch_sync_behind = `这个分支已落后于 BRANCH 分支`
                                const i18_branch_sync_behind_desc = `从 BRANCH 分支同步 NUM 个提交来更新分支以保持当前分支代码是最新的。`
                                const i18_branch_sync_out_of_date = `此分支已过时`
                                const i18_branch_sync_out_of_date_desc = `你可以将 BRANCH 分支中的最新更改合并到此分支中。或丢弃当前分支上的提交以使当前分支与 BRANCH 分支匹配。这将从当前分支中删除 NUM 个提交。`
                                const i18_branch_discard_diff = `丢弃 NUM 个提交`

                                const i18_branch_sync_success = `同步成功`
                                const i18_branch_sync_fail = `同步失败`
                                const i18_branch_discard_success = `丢弃成功`
                                const i18_branch_discard_fail = `丢弃失败`

                                window.locale_temple_branch_diff = {
                                    i18_compare_current_branch,
                                    i18_branch_ahead_commit,
                                    i18_branch_behind_commit,

                                    i18_contribute_ahead_title,
                                    i18_contribute_pr_create,
                                    i18_contribute_has_pr,
                                    i18_contribute_no_ahead,

                                    i18_branch_sync_behind,
                                    i18_branch_sync_behind_desc,
                                    i18_branch_sync_out_of_date,
                                    i18_branch_sync_out_of_date_desc,
                                    i18_branch_discard_diff,

                                    i18_branch_sync_success,
                                    i18_branch_sync_fail,
                                    i18_branch_discard_success,
                                    i18_branch_discard_fail
                                }
                            })();
                        </script>
                        <div class="row column tree-holder" id="tree-holder">
                            <div class="tree-content-holder" id="tree-content-holder">
                                <div class="ui flat nopadding segment tree-content">
                                    <div class="git-project-recent-commit" id="git-project-info">
                                        <div class="recent-commit"><a class="commit-author-link  js-popover-card "
                                                                      data-username="MTrun" href="/MTrun"><img
                                                class="avatar circular ui image 20 mini" width="20" alt=""
                                                src="https://foruda.gitee.com/avatar/1677029116973847167/4964818_mtrun_1653229420.png!avatar30">
                                            <span class="commit-author-name">奔跑的面条</span></a> <span> <a
                                                class="repo-index-commit-msg" title="Merge branch 'dev'"
                                                href="/dromara/go-view/commit/f6d2c1fc52174114035d9716d7966841df24270b">Merge branch 'dev'</a> </span>
                                            <span>f6d2c1f</span> <span class="timeago" datetime="2024-04-26 16:56"
                                                                       title="2024-04-26 16:56:06 +0800"></span>
                                            <build-status
                                                    commit-id="f6d2c1fc52174114035d9716d7966841df24270b"></build-status>
                                        </div>
                                        <div class="all-commits"><a href="/dromara/go-view/commits/master"><i
                                                class="iconfont icon-commit"></i> 2811 次提交 </a>
                                        </div>
                                    </div>
                                    <div class="grid list selection table_da39a3ee5e6b4b0d3255bfef95601890afd80709 tree-table ui"
                                         id="tree-slider">
                                        <div class="create-folder-form form ui">
                                            <form id="folder_form-edit" action="/dromara/go-view/new/master"
                                                  accept-charset="UTF-8" method="post">
                                                <input name="utf8" type="hidden" value="✓">
                                                <input type="hidden" name="authenticity_token"
                                                       value="5ijWvZooGU3wb+VkdhdYUmnh2ntonj7e6EZdCEB/CHorAnfoSCU7IG+6Eo4bDKxVxwvh6DqL+q1tzM8G2TkePQ==">
                                                <div class="fields">
                                                    <div class="field">
                                                        <input type="hidden" name="new_file_path" id="new_file_path">
                                                        <input type="hidden" name="content" id="content">
                                                        <input id="new_folder_path" name="new_folder_path"
                                                               placeholder="新建文件夹" type="text">
                                                    </div>
                                                    <div class="field">
                                                        <button name="button" type="submit"
                                                                class="ui primary button orange submit field-init-btn js-submit-btn">
                                                            提交
                                                        </button>
                                                        <a class="ui basic white button cancel field-init-btn"
                                                           href="javascript:void(0)">取消</a>
                                                    </div>
                                                    <div class="ui mid-center small message notice"><strong>提示:</strong>
                                                        由于 Git 不支持空文件夾，创建文件夹后会生成空的 .keep 文件
                                                    </div>
                                                </div>
                                            </form>
                                        </div>
                                        <div class="file_ee79750008cc7c2545716531b071d4943dc91ad9 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_ee79750008cc7c2545716531b071d4943dc91ad9">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path=".husky" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title=".husky"
                                                                                                         href="/dromara/go-view/tree/master/.husky"><span
                                                    class="simplified-path"></span>.husky
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_ee79750008cc7c2545716531b071d4943dc91ad9 row tree-item tree-item-rename"
                                             file_hex="file_ee79750008cc7c2545716531b071d4943dc91ad9"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/.husky">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".husky">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_c8a14ccf929ca041fc690272b7595aab4c061cb6 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_c8a14ccf929ca041fc690272b7595aab4c061cb6">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path=".workflow" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a
                                                    title=".workflow"
                                                    href="/dromara/go-view/tree/master/.workflow"><span
                                                    class="simplified-path"></span>.workflow
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_c8a14ccf929ca041fc690272b7595aab4c061cb6 row tree-item tree-item-rename"
                                             file_hex="file_c8a14ccf929ca041fc690272b7595aab4c061cb6"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/.workflow">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".workflow">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_80754af91bfb6d1073585b046fe0a474ce868509 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_80754af91bfb6d1073585b046fe0a474ce868509">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="build" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="build"
                                                                                                         href="/dromara/go-view/tree/master/build"><span
                                                    class="simplified-path"></span>build
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_80754af91bfb6d1073585b046fe0a474ce868509 row tree-item tree-item-rename"
                                             file_hex="file_80754af91bfb6d1073585b046fe0a474ce868509"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/build">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="build">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_64faf5d0b1dc311fd0f94af64f6c296a03045571 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_64faf5d0b1dc311fd0f94af64f6c296a03045571">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="plop" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="plop"
                                                                                                         href="/dromara/go-view/tree/master/plop"><span
                                                    class="simplified-path"></span>plop
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_64faf5d0b1dc311fd0f94af64f6c296a03045571 row tree-item tree-item-rename"
                                             file_hex="file_64faf5d0b1dc311fd0f94af64f6c296a03045571"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/plop">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="plop">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_61c9b2b17db77a27841bbeeabff923448b0f6388 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_61c9b2b17db77a27841bbeeabff923448b0f6388">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="public" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="public"
                                                                                                         href="/dromara/go-view/tree/master/public"><span
                                                    class="simplified-path"></span>public
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_61c9b2b17db77a27841bbeeabff923448b0f6388 row tree-item tree-item-rename"
                                             file_hex="file_61c9b2b17db77a27841bbeeabff923448b0f6388"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/public">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="public">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_f78a71af8bbf8cc2f6f313549d4da14bd3771359 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_f78a71af8bbf8cc2f6f313549d4da14bd3771359">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="readme" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="readme"
                                                                                                         href="/dromara/go-view/tree/master/readme"><span
                                                    class="simplified-path"></span>readme
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_f78a71af8bbf8cc2f6f313549d4da14bd3771359 row tree-item tree-item-rename"
                                             file_hex="file_f78a71af8bbf8cc2f6f313549d4da14bd3771359"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/readme">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="readme">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9 row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="src" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="src"
                                                                                                         href="/dromara/go-view/tree/master/src"><span
                                                    class="simplified-path"></span>src
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9 row tree-item tree-item-rename"
                                             file_hex="file_f27fede2220bcd326aee3e86ddfd4ebd0fe58cb9"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/src">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="src">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_e7b1fff7007b635892a8f2c7c17f4fabc7aa2f8c row tree-item"
                                             data-branch="master" data-type="folder"
                                             file_hex="file_e7b1fff7007b635892a8f2c7c17f4fabc7aa2f8c">
                                            <div class="five wide column tree-item-file-name tree-folder tree-list-item d-align-center"
                                                 data-path="types" data-type="folder"><i
                                                    class="iconfont icon-folders file-icon-item"></i> <a title="types"
                                                                                                         href="/dromara/go-view/tree/master/types"><span
                                                    class="simplified-path"></span>types
                                                <div class="js-tree-row-lfs"></div>
                                            </a>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_e7b1fff7007b635892a8f2c7c17f4fabc7aa2f8c row tree-item tree-item-rename"
                                             file_hex="file_e7b1fff7007b635892a8f2c7c17f4fabc7aa2f8c"
                                             style="display:none">
                                            <div class="ui column form" path="tree/master/types">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="types">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_4baf7563bc2391afe6f4fb0f57cfea02dbe5da66 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_4baf7563bc2391afe6f4fb0f57cfea02dbe5da66">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path=".commitlintrc.js" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title=".commitlintrc.js"
                                                                                       href="/dromara/go-view/blob/master/.commitlintrc.js">.commitlintrc.js</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_4baf7563bc2391afe6f4fb0f57cfea02dbe5da66 row tree-item tree-item-rename"
                                             file_hex="file_4baf7563bc2391afe6f4fb0f57cfea02dbe5da66"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/.commitlintrc.js">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".commitlintrc.js">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_3c84dcdc6bbe3d7817c49dcdc327b926fea1808a row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_3c84dcdc6bbe3d7817c49dcdc327b926fea1808a">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path=".env" data-type="file"><i class="iconfont icon-file"></i> <a
                                                    title=".env" href="/dromara/go-view/blob/master/.env">.env</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_3c84dcdc6bbe3d7817c49dcdc327b926fea1808a row tree-item tree-item-rename"
                                             file_hex="file_3c84dcdc6bbe3d7817c49dcdc327b926fea1808a"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/.env">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".env">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_88939cd7e826eac4f61dd9adac091b9d64277287 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_88939cd7e826eac4f61dd9adac091b9d64277287">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path=".eslintignore" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title=".eslintignore"
                                                                                       href="/dromara/go-view/blob/master/.eslintignore">.eslintignore</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_88939cd7e826eac4f61dd9adac091b9d64277287 row tree-item tree-item-rename"
                                             file_hex="file_88939cd7e826eac4f61dd9adac091b9d64277287"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/.eslintignore">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".eslintignore">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_dbc0c31823b8f2e4ed04a397722fed33a67f123f row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_dbc0c31823b8f2e4ed04a397722fed33a67f123f">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path=".eslintrc.js" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title=".eslintrc.js"
                                                                                       href="/dromara/go-view/blob/master/.eslintrc.js">.eslintrc.js</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_dbc0c31823b8f2e4ed04a397722fed33a67f123f row tree-item tree-item-rename"
                                             file_hex="file_dbc0c31823b8f2e4ed04a397722fed33a67f123f"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/.eslintrc.js">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".eslintrc.js">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_a5cc2925ca8258af241be7e5b0381edf30266302 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_a5cc2925ca8258af241be7e5b0381edf30266302">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path=".gitignore" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title=".gitignore"
                                                                                       href="/dromara/go-view/blob/master/.gitignore">.gitignore</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_a5cc2925ca8258af241be7e5b0381edf30266302 row tree-item tree-item-rename"
                                             file_hex="file_a5cc2925ca8258af241be7e5b0381edf30266302"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/.gitignore">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value=".gitignore">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_0398ccd0f49298b10a3d76a47800d2ebecd49859 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_0398ccd0f49298b10a3d76a47800d2ebecd49859">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="LICENSE" data-type="file"><i class="iconfont icon-file"></i>
                                                <a title="LICENSE"
                                                   href="/dromara/go-view/blob/master/LICENSE">LICENSE</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_0398ccd0f49298b10a3d76a47800d2ebecd49859 row tree-item tree-item-rename"
                                             file_hex="file_0398ccd0f49298b10a3d76a47800d2ebecd49859"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/LICENSE">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="LICENSE">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_836efb6e25a091dcb4ff8e1dbb2f0be6a5cbf14c row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_836efb6e25a091dcb4ff8e1dbb2f0be6a5cbf14c">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="Makefile" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="Makefile"
                                                                                       href="/dromara/go-view/blob/master/Makefile">Makefile</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_836efb6e25a091dcb4ff8e1dbb2f0be6a5cbf14c row tree-item tree-item-rename"
                                             file_hex="file_836efb6e25a091dcb4ff8e1dbb2f0be6a5cbf14c"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/Makefile">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="Makefile">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="README.md" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="README.md"
                                                                                       href="/dromara/go-view/blob/master/README.md">README.md</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d row tree-item tree-item-rename"
                                             file_hex="file_8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/README.md">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="README.md">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_674effb85dac479ec2f277de2d8e1a362611e177 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_674effb85dac479ec2f277de2d8e1a362611e177">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="index.css" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="index.css"
                                                                                       href="/dromara/go-view/blob/master/index.css">index.css</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_674effb85dac479ec2f277de2d8e1a362611e177 row tree-item tree-item-rename"
                                             file_hex="file_674effb85dac479ec2f277de2d8e1a362611e177"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/index.css">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="index.css">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_f6013a00b362253c64368d6eebc50ea2131754e2 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_f6013a00b362253c64368d6eebc50ea2131754e2">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="index.html" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="index.html"
                                                                                       href="/dromara/go-view/blob/master/index.html">index.html</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_f6013a00b362253c64368d6eebc50ea2131754e2 row tree-item tree-item-rename"
                                             file_hex="file_f6013a00b362253c64368d6eebc50ea2131754e2"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/index.html">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="index.html">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_7030d0b2f71b999ff89a343de08c414af32fc93a row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_7030d0b2f71b999ff89a343de08c414af32fc93a">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="package.json" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="package.json"
                                                                                       href="/dromara/go-view/blob/master/package.json">package.json</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_7030d0b2f71b999ff89a343de08c414af32fc93a row tree-item tree-item-rename"
                                             file_hex="file_7030d0b2f71b999ff89a343de08c414af32fc93a"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/package.json">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="package.json">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_a829ed6336deb68f9874e5da490e1ec440b0e9b7 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_a829ed6336deb68f9874e5da490e1ec440b0e9b7">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="pnpm-lock.yaml" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="pnpm-lock.yaml"
                                                                                       href="/dromara/go-view/blob/master/pnpm-lock.yaml">pnpm-lock.yaml</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_a829ed6336deb68f9874e5da490e1ec440b0e9b7 row tree-item tree-item-rename"
                                             file_hex="file_a829ed6336deb68f9874e5da490e1ec440b0e9b7"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/pnpm-lock.yaml">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="pnpm-lock.yaml">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_5545147ddef8ba341e646ddc20c3d3d456b3fe04 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_5545147ddef8ba341e646ddc20c3d3d456b3fe04">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="prettier.config.js" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="prettier.config.js"
                                                                                       href="/dromara/go-view/blob/master/prettier.config.js">prettier.config.js</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_5545147ddef8ba341e646ddc20c3d3d456b3fe04 row tree-item tree-item-rename"
                                             file_hex="file_5545147ddef8ba341e646ddc20c3d3d456b3fe04"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/prettier.config.js">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="prettier.config.js">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_2909306c6fbfad5e3a273c3727531c3ad748ae03 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_2909306c6fbfad5e3a273c3727531c3ad748ae03">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="preview.yml" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="preview.yml"
                                                                                       href="/dromara/go-view/blob/master/preview.yml">preview.yml</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_2909306c6fbfad5e3a273c3727531c3ad748ae03 row tree-item tree-item-rename"
                                             file_hex="file_2909306c6fbfad5e3a273c3727531c3ad748ae03"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/preview.yml">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="preview.yml">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_61ebb9fd6e8cf9082658121d5d81e297791dacd0 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_61ebb9fd6e8cf9082658121d5d81e297791dacd0">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="tsconfig.json" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="tsconfig.json"
                                                                                       href="/dromara/go-view/blob/master/tsconfig.json">tsconfig.json</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_61ebb9fd6e8cf9082658121d5d81e297791dacd0 row tree-item tree-item-rename"
                                             file_hex="file_61ebb9fd6e8cf9082658121d5d81e297791dacd0"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/tsconfig.json">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="tsconfig.json">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="file_75ea7f3ea6d80d54bb5b2357996972d1632a5038 row tree-item"
                                             data-branch="master" data-type="file"
                                             file_hex="file_75ea7f3ea6d80d54bb5b2357996972d1632a5038">
                                            <div class="five wide column tree-item-file-name tree-list-item d-align-center"
                                                 data-path="vite.config.ts" data-type="file"><i
                                                    class="iconfont icon-file"></i> <a title="vite.config.ts"
                                                                                       href="/dromara/go-view/blob/master/vite.config.ts">vite.config.ts</a>
                                                <div class="js-tree-row-lfs"></div>
                                            </div>
                                            <div class="js-tree-row-commit"></div>
                                        </div>
                                        <div class="rename-file_75ea7f3ea6d80d54bb5b2357996972d1632a5038 row tree-item tree-item-rename"
                                             file_hex="file_75ea7f3ea6d80d54bb5b2357996972d1632a5038"
                                             style="display:none">
                                            <div class="ui column form" path="blob/master/vite.config.ts">
                                                <div class="two fields">
                                                    <div class="five wide field">
                                                        <input class="ui input" name="new_filename" type="text"
                                                               value="vite.config.ts">
                                                    </div>
                                                    <div class="five wide field">
                                                        <button class="ui blue button popup-save" type="submit">保存
                                                        </button>
                                                        <button class="ui basic button popup-close">取消</button>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <div class="ui tree_progress" data-logs-path="/dromara/go-view/refs/master/logs_tree/">
                                    <div class="ui active inverted dimmer">
                                        <div class="ui small text loader">
                                            Loading...
                                        </div>
                                    </div>
                                </div>
                                <div class="readme-box" id="git-readme">
                                    <div class="ui flat nopadding segment file_holder">
                                        <div class="file_title d-flex-between file_readme_title">
                                            <div class="d-flex">
                                                <div class="file_title_readme mr-1 pb-1 active-title pr-1 pl-1"><i
                                                        class="iconfont icon-readme mr-05"></i> <span class="file_name">README</span>
                                                </div>
                                                <div class="file_title_license pb-1 pl-1 pr-1"><i
                                                        class="iconfont icon-licence mr-05"></i> <span
                                                        class="file_name"> MIT </span>
                                                </div>
                                            </div>
                                            <div>
                                                <div class="readme-edit"><a class="text-muted edit_path edit-blob"
                                                                            href="/dromara/go-view/edit/master/README.md"
                                                                            title="只有登陆后才可以编辑"> <i
                                                        class="iconfont icon-edit mr-05"></i> </a>
                                                </div>
                                                <div class="hide lisence-edit"><a class="text-muted edit_path edit-blob"
                                                                                  href="/dromara/go-view/edit/master/LICENSE"
                                                                                  title="只有登陆后才可以编辑"> <i
                                                        class="iconfont icon-edit mr-05"></i> </a>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="readme-content">
                                            <div class="file_catalog">
                                                <div class="toggle"><i class="icon angle left"></i>
                                                </div>
                                                <div class="scroll-container">
                                                    <div class="container">
                                                        <div class="skeleton">
                                                            <div class="line line1"></div>
                                                            <div class="line line2"></div>
                                                            <div class="line line3"></div>
                                                            <div class="line line1"></div>
                                                            <div class="line line2"></div>
                                                            <div class="line line3"></div>
                                                        </div>
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="file_content markdown-body">
                                                <p align="center"><a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fai.goviewlink.com%2F%3Fchannel%3Dmayun"
                                                        target="_blank"> <img
                                                        src="/dromara/go-view/raw/master/readme/GoViewPro.png"
                                                        alt="go-view"> </a></p>
                                                <p align="center"><img
                                                        src="/dromara/go-view/raw/master/readme/logo-t-y.png"
                                                        alt="go-view"></p>
                                                <h4 align="center"><a id="user-content-开源精美便捷的数据可视化低代码开发平台"
                                                                      class="anchor"
                                                                      href="#%E5%BC%80%E6%BA%90%E7%B2%BE%E7%BE%8E%E4%BE%BF%E6%8D%B7%E7%9A%84%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96%E4%BD%8E%E4%BB%A3%E7%A0%81%E5%BC%80%E5%8F%91%E5%B9%B3%E5%8F%B0"></a>开源、精美、便捷的「数据可视化」低代码开发平台
                                                </h4>
                                                <h4><a id="user-content-长期赞助商" class="anchor"
                                                       href="#%E9%95%BF%E6%9C%9F%E8%B5%9E%E5%8A%A9%E5%95%86"></a>长期赞助商
                                                </h4>
                                                <div>
                                                    <div align="center"><a
                                                            href="https://gitee.com/link?target=http%3A%2F%2Fwww.ccflow.org%2F%3Ffrom%3DgoviewGitee"
                                                            target="_blank"> <img
                                                            src="/dromara/go-view/raw/master/readme/sponsors/ccflow-banner.png"
                                                            alt="go-view" width="250px"> </a> <span> &nbsp;</span> <a
                                                            href="https://gitee.com/link?target=https%3A%2F%2Ffastbee.cn%2F"
                                                            target="_blank"> <img
                                                            src="/dromara/go-view/raw/master/readme/sponsors/fb-banner.gif"
                                                            alt="go-view" width="250px"> </a>
                                                        <br>
                                                        <br>
                                                        <a href="https://gitee.com/link?target=http%3A%2F%2Fdoc.zyplayer.com%2F%23%2Fintegrate%2Fzyplayer-doc%3Futm%3Dgoview"
                                                           target="_blank"> <img
                                                                src="/dromara/go-view/raw/master/readme/sponsors/zyplayer-banner.png"
                                                                alt="go-view" width="250px"> </a> <span> &nbsp;</span>
                                                        <a href="https://gitee.com/dandiankeji/icampus" target="_blank">
                                                            <img src="/dromara/go-view/raw/master/readme/sponsors/dandian-banner.png"
                                                                 alt="go-view" width="250px"> </a>
                                                        <br>
                                                        <br>
                                                        <a href="https://gitee.com/link?target=https%3A%2F%2Fwww.mingdao.com%3Fs%3Dutm_88%26utm_source%3DGoview%26utm_medium%3Dbanner%26utm_campaign%3Dgitee%26utm_content%3DIT%25E8%25B5%258B%25E8%2583%25BD%25E4%25B8%259A%25E5%258A%25A1"
                                                           target="_blank"> <img
                                                                src="/dromara/go-view/raw/master/readme/sponsors/mdy-banner.png"
                                                                alt="go-view" width="270px"> </a> <a
                                                                href="https://gitee.com/link?target=https%3A%2F%2Fiotdoc.sagoo.cn%2F"
                                                                target="_blank"> <img
                                                                src="/dromara/go-view/raw/master/readme/sponsors/shaguo-banner.png"
                                                                alt="go-view" width="270px"> </a>
                                                        <br>
                                                        <br>
                                                        <a href="https://gitee.com/link?target=http%3A%2F%2Fwww.yunchengxc.com%2F"
                                                           target="_blank"> <img
                                                                src="/dromara/go-view/raw/master/readme/sponsors/yuncheng-banner.png"
                                                                alt="go-view" width="270px"> </a> <a
                                                                href="https://gitee.com/link?target=https%3A%2F%2Fwww.diboot.com%3Ffrom%3Dgv%2F"
                                                                target="_blank"> <img
                                                                src="/dromara/go-view/raw/master/readme/sponsors/diboot-banner.png"
                                                                alt="go-view" width="270px"> </a>
                                                    </div>
                                                </div>
                                                <h4><a id="user-content--纯前端-分支-master" class="anchor"
                                                       href="#-%E7%BA%AF%E5%89%8D%E7%AB%AF-%E5%88%86%E6%94%AF-master"></a>😶
                                                    <strong>纯前端</strong> 分支： <strong><code>master</code></strong></h4>
                                                <h4><a id="user-content--携带-后端-请求分支-master-fetch" class="anchor"
                                                       href="#-%E6%90%BA%E5%B8%A6-%E5%90%8E%E7%AB%AF-%E8%AF%B7%E6%B1%82%E5%88%86%E6%94%AF-master-fetch"></a>👻
                                                    携带 <strong>后端</strong> 请求分支:
                                                    <strong><code>master-fetch</code></strong></h4>
                                                <h4><a id="user-content--goview-文档-地址httpswwwmtruningclub"
                                                       class="anchor"
                                                       href="#-goview-%E6%96%87%E6%A1%A3-%E5%9C%B0%E5%9D%80httpswwwmtruningclub"></a>📚
                                                    GoView <strong>文档</strong> 地址：<a
                                                            href="https://gitee.com/link?target=https%3A%2F%2Fwww.mtruning.club%2F">https://www.mtruning.club/</a>
                                                </h4>
                                                <p>项目纯前端-Demo 地址：<a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fvue.mtruning.club%2F">https://vue.mtruning.club/</a>
                                                </p>
                                                <p>项目带后端-Demo 地址：<a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fdemo.mtruning.club%2F">https://demo.mtruning.club/</a>
                                                </p>
                                                <p>Cloud IDE 代码在线预览地址：<a href="https://idegitee.com/dromara/go-view"
                                                                         rel="nofollow">https://idegitee.com/dromara/go-view</a>
                                                </p>
                                                <h4><a id="user-content--后端项目看这里" class="anchor"
                                                       href="#-%E5%90%8E%E7%AB%AF%E9%A1%B9%E7%9B%AE%E7%9C%8B%E8%BF%99%E9%87%8C"></a>🤯
                                                    后端项目看这里!</h4>
                                                <p>后端地址（社区实现，仅供参考）：</p>
                                                <ul>
                                                    <li><code>JAVA</code> <a
                                                            href="https://gitee.com/MTrun/go-view-serve">https://gitee.com/MTrun/go-view-serve</a>
                                                        (当前使用)
                                                    </li>
                                                    <li><code>.NET</code> <a
                                                            href="https://gitee.com/sun_xiang_yu/go-view-dotnet">https://gitee.com/sun_xiang_yu/go-view-dotnet</a>
                                                    </li>
                                                    <li><code>NODE</code> <a href="https://gitee.com/qwdingyu/led">https://gitee.com/qwdingyu/led</a>
                                                    </li>
                                                    <li><code>Docker 镜像</code> <a
                                                            href="https://gitee.com/AHEAD4/go-view-docker">https://gitee.com/AHEAD4/go-view-docker</a>
                                                    </li>
                                                    <li><code>接口文档</code><a
                                                            href="https://gitee.com/link?target=https%3A%2F%2Fdocs.apipost.cn%2Fpreview%2F5aa85d10a59d66ce%2Fddb813732007ad2b%3Ftarget_id%3D84dbc5b0-158f-4bcb-8f74-793ac604ada3">https://docs.apipost.cn</a>
                                                        (不是最新, 以前端代码为准)
                                                    </li>
                                                </ul>
                                                <h4><a id="user-content-整体介绍" class="anchor"
                                                       href="#%E6%95%B4%E4%BD%93%E4%BB%8B%E7%BB%8D"></a>整体介绍</h4>
                                                <ul>
                                                    <li><p>框架：基于 <code>Vue3</code> 框架编写，使用 <code>hooks</code>
                                                        写法抽离部分逻辑，使代码结构更加清晰；</p></li>
                                                    <li><p>类型：使用 <code>TypeScript</code> 进行类型约束，减少未知错误发生概率，可以大胆修改逻辑内容；
                                                    </p></li>
                                                    <li><p>性能：多处性能优化，使用页面懒加载、组件动态注册、数据滚动加载等方式，提升页面渲染速度；</p></li>
                                                    <li><p>存储：拥有本地记忆，部分配置项采用 <code>storage</code> 存储本地，提升使用体验；</p></li>
                                                    <li><p>封装：项目进行了详细的工具类封装如：路由、存储、加/解密、文件处理、主题、NaiveUI 全局方法、组件等</p>
                                                    </li>
                                                    <li><p>入选 NaiveUI 社区精选资源推荐：<a
                                                            href="https://gitee.com/link?target=https%3A%2F%2Fwww.naiveui.com%2Fzh-CN%2Flight%2Fdocs%2Fcommunity">查看
                                                        NaiveUI 推荐列表</a></p></li>
                                                </ul>
                                                <p>说明文档： <img src="/dromara/go-view/raw/master/readme/go-view-doc.png"
                                                              alt="说明文档"></p>
                                                <p>工作台： <img src="/dromara/go-view/raw/master/readme/go-view-canvas.png"
                                                             alt="工作台"></p>
                                                <p>请求配置： <img src="/dromara/go-view/raw/master/readme/go-view-fetch.png"
                                                              alt="请求配置"></p>
                                                <p>数据过滤： <img
                                                        src="/dromara/go-view/raw/master/readme/go-view-filter.png"
                                                        alt="数据过滤"></p>
                                                <p>高级事件编辑: <img
                                                        src="/dromara/go-view/raw/master/readme/go-view-event.png"
                                                        alt="高级事件编辑"></p>
                                                <p>自定义组件颜色: <img
                                                        src="/dromara/go-view/raw/master/readme/go-view-echarts-color.png"
                                                        alt="高级事件编辑"></p>
                                                <p>快捷主页： <img
                                                        src="/dromara/go-view/raw/master/readme/go-view-indexpage.png"
                                                        alt="快捷主页"></p>
                                                <p>主题色： <img src="/dromara/go-view/raw/master/readme/go-view-color.png"
                                                             alt="主题色"></p>
                                                <p>亮白主题： <img src="/dromara/go-view/raw/master/readme/go-view-theme.png"
                                                              alt="亮白主题"></p>
                                                <p>主要技术栈为：</p>
                                                <table>
                                                    <thead>
                                                    <tr>
                                                        <th>名称</th>
                                                        <th>版本</th>
                                                        <th>名称</th>
                                                        <th>版本</th>
                                                    </tr>
                                                    </thead>
                                                    <tbody>
                                                    <tr>
                                                        <td>Vue</td>
                                                        <td>3.2.x</td>
                                                        <td>TypeScript4</td>
                                                        <td>4.6.x</td>
                                                    </tr>
                                                    <tr>
                                                        <td>Vite</td>
                                                        <td>4.2.x</td>
                                                        <td>NaiveUI</td>
                                                        <td>2.34.x</td>
                                                    </tr>
                                                    <tr>
                                                        <td>ECharts</td>
                                                        <td>5.3.x</td>
                                                        <td>Pinia</td>
                                                        <td>2.0.x</td>
                                                    </tr>
                                                    <tr>
                                                        <td>详见 <code>package.json</code></td>
                                                        <td>😁</td>
                                                        <td>🥰</td>
                                                        <td>🤗</td>
                                                    </tr>
                                                    </tbody>
                                                </table>
                                                <p>开发环境:</p>
                                                <table>
                                                    <thead>
                                                    <tr>
                                                        <th>名称</th>
                                                        <th>版本</th>
                                                        <th>名称</th>
                                                        <th>版本</th>
                                                    </tr>
                                                    </thead>
                                                    <tbody>
                                                    <tr>
                                                        <td>node</td>
                                                        <td>16.16.x</td>
                                                        <td>npm</td>
                                                        <td>8.5.x</td>
                                                    </tr>
                                                    <tr>
                                                        <td>pnpm</td>
                                                        <td>7.1.x</td>
                                                        <td>windows</td>
                                                        <td>11</td>
                                                    </tr>
                                                    </tbody>
                                                </table>
                                                <p>已完成图表：</p>
                                                <table>
                                                    <thead>
                                                    <tr>
                                                        <th>分类</th>
                                                        <th>名称</th>
                                                        <th>名称</th>
                                                        <th>名称</th>
                                                        <th>名称</th>
                                                    </tr>
                                                    </thead>
                                                    <tbody>
                                                    <tr>
                                                        <td>图表</td>
                                                        <td>柱状图</td>
                                                        <td>横向柱状图</td>
                                                        <td>折线图</td>
                                                        <td>单/多 折线面积图(渐变色)</td>
                                                    </tr>
                                                    <tr>
                                                        <td>*</td>
                                                        <td>饼图</td>
                                                        <td>环形图</td>
                                                        <td>水球图</td>
                                                        <td>雷达图</td>
                                                    </tr>
                                                    <tr>
                                                        <td>*</td>
                                                        <td>NaiveUI 多种进度</td>
                                                        <td>散点图</td>
                                                        <td>对数回归散点图</td>
                                                        <td>热力图</td>
                                                    </tr>
                                                    <tr>
                                                        <td>*</td>
                                                        <td>漏斗图</td>
                                                        <td>中国地图</td>
                                                        <td>高德地图</td>
                                                        <td>🦊</td>
                                                    </tr>
                                                    <tr>
                                                        <td>信息</td>
                                                        <td>文字</td>
                                                        <td>渐变文字</td>
                                                        <td>词云</td>
                                                        <td>嵌套网页</td>
                                                    </tr>
                                                    <tr>
                                                        <td>*</td>
                                                        <td>图片</td>
                                                        <td>视频</td>
                                                        <td>😺</td>
                                                        <td>🐯</td>
                                                    </tr>
                                                    <tr>
                                                        <td>列表</td>
                                                        <td>滚动排名列表</td>
                                                        <td>滚动表格</td>
                                                        <td>🐮</td>
                                                        <td>🐐</td>
                                                    </tr>
                                                    <tr>
                                                        <td>小组件</td>
                                                        <td>边框-01~13</td>
                                                        <td>装饰-01~05</td>
                                                        <td>数字翻牌</td>
                                                        <td>通用时间</td>
                                                    </tr>
                                                    <tr>
                                                        <td>*</td>
                                                        <td>数字计数</td>
                                                        <td>倒计时</td>
                                                        <td>时钟</td>
                                                        <td>🦁</td>
                                                    </tr>
                                                    </tbody>
                                                </table>
                                                <h2><a id="user-content-浏览器支持" class="anchor"
                                                       href="#%E6%B5%8F%E8%A7%88%E5%99%A8%E6%94%AF%E6%8C%81"></a>浏览器支持
                                                </h2>
                                                <p>开发和测试平台均在 <code>Google</code> 和最新版 <code>EDGE</code> 上完成，暂未测试 <code>IE11</code>
                                                    等其它浏览器，如有需求请自行测试与兼容。</p>
                                                <h2><a id="user-content-安装" class="anchor"
                                                       href="#%E5%AE%89%E8%A3%85"></a>安装</h2>
                                                <p>请查看文档：<a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fwww.mtruning.club%2F">https://www.mtruning.club/</a>
                                                </p>
                                                <h2><a id="user-content-代码提交" class="anchor"
                                                       href="#%E4%BB%A3%E7%A0%81%E6%8F%90%E4%BA%A4"></a>代码提交</h2>
                                                <ul>
                                                    <li>feat: 新功能</li>
                                                    <li>fix: 修复 Bug</li>
                                                    <li>docs: 文档修改</li>
                                                    <li>perf: 性能优化</li>
                                                    <li>revert: 版本回退</li>
                                                    <li>ci: CICD 集成相关</li>
                                                    <li>test: 添加测试代码</li>
                                                    <li>refactor: 代码重构</li>
                                                    <li>build: 影响项目构建或依赖修改</li>
                                                    <li>style: 不影响程序逻辑的代码修改</li>
                                                    <li>chore: 不属于以上类型的其他类型(日常事务)</li>
                                                </ul>
                                                <h2><a id="user-content-交流群" class="anchor"
                                                       href="#%E4%BA%A4%E6%B5%81%E7%BE%A4"></a>交流群</h2>
                                                <p>QQ 群：647239611</p>
                                                <img width="260px"
                                                     src="/dromara/go-view/raw/master/readme/go-view-qq.jpg" alt="QQ群">
                                                <h2><a id="user-content-pro-部分功能展示" class="anchor"
                                                       href="#pro-%E9%83%A8%E5%88%86%E5%8A%9F%E8%83%BD%E5%B1%95%E7%A4%BA"></a>Pro
                                                    部分功能展示</h2>
                                                <p>体验地址： <a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fai.goviewlink.com%2F"
                                                        target="_blank"></a><a
                                                        href="https://gitee.com/link?target=https%3A%2F%2Fai.goviewlink.com%2F">https://ai.goviewlink.com/</a>
                                                </p>
                                                <p><img src="/dromara/go-view/raw/master/readme/logo-poster.png"
                                                        alt="渲染海报"></p>
                                            </div>
                                            <div class="file_line"></div>
                                        </div>
                                        <div class="hide lisence-content">
                                            <div class="file_content code">
                                                <div class="d-block lines mb-1 ml-3 mr-3 mt-1 white">
                                                    <div class="preformatted">
                                                        MIT License Copyright (c) 2021-present GoView Permission is
                                                        hereby granted, free of charge, to any person obtaining a copy
                                                        of this software and associated documentation files (the
                                                        "Software"), to deal in the Software without restriction,
                                                        including without limitation the rights to use, copy, modify,
                                                        merge, publish, distribute, sublicense, and/or sell copies of
                                                        the Software, and to permit persons to whom the Software is
                                                        furnished to do so, subject to the following conditions: The
                                                        above copyright notice and this permission notice shall be
                                                        included in all copies or substantial portions of the Software.
                                                        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
                                                        EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
                                                        OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
                                                        NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
                                                        HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
                                                        WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
                                                        FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
                                                        OTHER DEALINGS IN THE SOFTWARE.
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <script>
                                    "use strict";
                                    if ($('.markdown-body').children("style").length != 0) {
                                        var i, array = $('.markdown-body').children("style");
                                        array.first().attr('scoped', '');
                                        $.scoped();
                                    }

                                    window.Gitee.initReadmeCatalog();
                                    toMathMlCode('', 'markdown-body')

                                    $('.file_content a, .catalog-li a.anchor').click(function () {
                                        var anchor = $(this).attr('href')
                                        window.location.hash = anchor
                                    })

                                    $('.appeal_message').removeClass('text-center')

                                    $(".file_title_readme").click(function (event) {
                                        $('.lisence-content').hide()
                                        $('.readme-content').show()
                                        $('.lisence-edit').hide()
                                        $('.readme-edit').show()
                                        $('.file_title_readme').addClass('active-title')
                                        $('.file_title_license').removeClass('active-title')
                                    });
                                    $(".file_title_license").click(function (event) {
                                        $('.lisence-content').show()
                                        $('.readme-content').hide()
                                        $('.lisence-edit').show()
                                        $('.readme-edit').hide()
                                        $('.file_title_license').addClass('active-title')
                                        $('.file_title_readme').removeClass('active-title')
                                    });
                                    try {
                                        if ((gon.wait_fork != undefined && gon.wait_fork == true) || (gon.wait_fetch != undefined && gon.wait_fetch == true)) {
                                            $('.edit-blob').popup({
                                                content: "当前仓库正在后台处理中,暂时无法编辑",
                                                on: 'hover',
                                                delay: {show: 200, hide: 200}
                                            });
                                            $('.edit-blob').click(function (e) {
                                                e.preventDefault();
                                            })
                                        }
                                    } catch (error) {
                                    }
                                    $('.disabled-edit-readonly').popup({
                                        content: "只读文件不可编辑",
                                        className: {
                                            popup: 'ui popup',
                                        },
                                        position: 'bottom center',
                                    })
                                    $('.disabled-edit-readonly, .disabled-edit-status').click(function () {
                                        return false
                                    })
                                    $('.has_tooltip').popup({
                                        position: 'top center'
                                    });
                                </script>
                                <style>
                                    .txt-style {
                                        background: #FFF !important;
                                        padding: 0 !important;
                                    }

                                    .file_readme_title {
                                        padding-bottom: 0 !important;
                                        cursor: pointer;
                                    }

                                    .active-title {
                                        border-bottom: 2px solid #fe7300;
                                    }

                                    .preformatted {
                                        font-family: monospace;
                                        word-wrap: break-word;
                                        white-space: pre-wrap;
                                        word-break: keep-all;
                                    }

                                    .disabled-edit-readonly,
                                    .has_tooltip {
                                        color: #40485b !important;
                                        cursor: default !important;
                                        opacity: 0.3 !important;
                                    }
                                </style>
                            </div>
                            <div class="project__footer-container">
                                <div class="actions">
                                    <div class="item star-container">
                                        <div class="unstar"><a sa_evt="loginInform_show" sa_referrer_url=""
                                                               sa_referrer_action="Star" sa_referrer_type="仓库页面"
                                                               href="/login">
                                            <div class="circle"><i class="iconfont icon-star-solid"></i>
                                            </div>
                                        </a><a class="content" href="/dromara/go-view/stargazers">
                                            <div class="title">
                                                Starred
                                            </div>
                                            <div class="desc action-social-count">
                                                12.4K
                                            </div>
                                        </a>
                                        </div>
                                        <div class="star"><a sa_evt="loginInform_show" sa_referrer_url=""
                                                             sa_referrer_action="Star" sa_referrer_type="仓库页面"
                                                             href="/login">
                                            <div class="circle"><i class="iconfont icon-star"></i>
                                            </div>
                                        </a><a class="content" href="/dromara/go-view/stargazers">
                                            <div class="title">
                                                Star
                                            </div>
                                            <div class="desc action-social-count">
                                                12.4K
                                            </div>
                                        </a>
                                        </div>
                                    </div>
                                    <div class="item fork-container"><a sa_evt="loginInform_show" sa_referrer_url=""
                                                                        sa_referrer_action="Fork"
                                                                        sa_referrer_type="仓库页面" href="/login">
                                        <div class="circle"><i class="iconfont icon-fork"></i>
                                        </div>
                                    </a><a href="/dromara/go-view/members">
                                        <div class="content">
                                            <div class="title">
                                                Fork
                                            </div>
                                            <div class="desc">
                                                3.8K
                                            </div>
                                        </div>
                                    </a>
                                    </div>
                                    <div class="item donate-container">
                                        <div class="circle"><i class="iconfont icon-donate"></i>
                                        </div>
                                        <div class="content">
                                            <div class="title">
                                                捐赠
                                            </div>
                                            <div class="desc">
                                                22 人次
                                            </div>
                                        </div>
                                        <a class="donate-detail" href="javascript: void(0);">详情</a>
                                    </div>
                                </div>
                                <div class="project-donate-list hide">
                                    <div class="title">
                                        最近捐赠记录
                                    </div>
                                    <div class="container"></div>
                                    <a class="btn-load-more" href="javascript: void(0);">查看更多</a>
                                    <div class="tip-loading" style="display: none">
                                        <div class="ui active mini inline loader"></div>
                                        正在加载...
                                    </div>
                                </div>
                            </div>
                            <script>
                                var $donateModal = $('.project-donate-modal');
                                $('.donate-container').on('click', '.circle, .content', function () {
                                    $donateModal.modal('show');
                                });
                            </script>
                            <script>
                                (function () {
                                    var $btnLoad, $donateDetail, $donateList, $list, $tipLoading, isFirstLoaded,
                                        isLoading, loadDonates, page, setDonates;

                                    page = 0;

                                    isLoading = false;

                                    isFirstLoaded = false;

                                    $donateDetail = $('.donate-detail');

                                    $donateList = $('.project-donate-list');

                                    $list = $donateList.find('.container');

                                    $btnLoad = $donateList.find('.btn-load-more');

                                    $tipLoading = $donateList.find('.tip-loading');

                                    setDonates = function (list) {
                                        var html, i, item, len;
                                        html = '<div>';
                                        for (i = 0, len = list.length; i < len; i++) {
                                            item = list[i];
                                            if (item.donator_avatar_url.indexOf('no_portrait.png') === 0) {
                                                item.donator_avatar_url = LetterAvatar(item.donator_name);
                                            }
                                            html += "<div class=\"item\">\n  <span class=\"donate-info\">\n    <img src=\"" + item.donator_avatar_url + "\" class=\"ui inline circular image\" alt=\"" + item.donator_name + "\" />\n  </span>\n  <div class=\"ui popup text-center\">\n    <div class=\"header\">\n      " + item.donator_name + "\n      <span class=\"ui mini yellow circular label\">¥ " + item.money + "</span>\n    </div>\n    " + (item.message != null ? "<div class=\'content\'>" + item.message + "</div>" : '') + "\n  </div>\n</div>";
                                        }
                                        html += '</div>';
                                        $list.append(html);
                                        return $list.find('.donate-info').popup({
                                            inline: true,
                                            position: 'bottom center'
                                        });
                                    };

                                    loadDonates = function () {
                                        if (isLoading) {
                                            return;
                                        }
                                        page += 1;
                                        isLoading = true;
                                        $btnLoad.hide();
                                        $tipLoading.show();
                                        return $.getJSON('/dromara/go-view/donates.json', {
                                            page: page
                                        }, function (list) {
                                            setDonates(list);
                                            isLoading = false;
                                            isFirstLoaded = true;
                                            if (page * 12 < 22) {
                                                $btnLoad.show();
                                                return $tipLoading.hide();
                                            } else {
                                                $btnLoad.remove();
                                                return $tipLoading.remove();
                                            }
                                        });
                                    };

                                    $btnLoad.on('click', loadDonates);

                                    $donateDetail.on('click', function () {
                                        $donateList.toggleClass('hide');
                                        if (!isFirstLoaded) {
                                            return loadDonates();
                                        }
                                    });

                                }).call(this);
                            </script>
                            <script id="tree-item-context-menu-template" type="text/plain">
<div class='ui menu compact vertical tree-context'>
<a class='btn-open-new-tab item tree-operation'>
<i class='file outline icon'></i>
新标签打开
</a>
<a class='btn-copy item tree-operation'>
<i class='copy icon'></i>
复制
</a>
<a class='btn-rename item tree-operation'>
<i class='edit icon'></i>
重命名
</a>
<a class='btn-delete item tree-operation'>
<i class='trash icon'></i>
删除
</a>
</div>

                            </script>
                            <script id="tree-item-submodule-context-menu-template" type="text/plain">
<div class='ui menu compact vertical tree-context'>
<a class='btn-copy item tree-operation'>
<i class='copy icon'></i>
复制
</a>
<a class='btn-compact-edit item tree-operation submodule_item'>
<i class='edit icon'></i>
编辑
</a>
<a class='btn-submodule-delete item tree-operation submodule_item'>
<i class='trash icon'></i>
删除
</a>
</div>

                            </script>
                            <script src="/static/javascripts/file-icons.js"></script>
                            <script>
                                $(function () {
                                    $(".tree-list-item").each(function () {
                                        $this = $(this)
                                        var path = $this.attr('data-path')
                                        var type = $this.attr('data-type')
                                        $icon = $this.find('i')
                                        if (type === 'file') {
                                            let iconClass = '';
                                            try {
                                                iconClass =
                                                    FileIcons.getClassWithColor(path) || 'file-generic';
                                            } catch (err) {
                                            }
                                            if (iconClass)
                                                $icon.attr('class', "file-icon-item iconfont icon-file ".concat(iconClass));
                                        }
                                    })
                                    var $createFolderForm = $('.create-folder-form'),
                                        $createFolderSubmitBtn = $('.create-folder-form .js-submit-btn')
                                    $folderPath = $('#new_folder_path'),
                                        $message = $('.create-folder-form .notice'),
                                        folders = [".husky", ".workflow", "build", "plop", "public", "readme", "src", "types"],
                                        folderReg = new RegExp(/\/+/);

                                    var INDEX_BEGIN_WITH_READONLY_DIR = 0
                                    var gitGCModal = new GiteeModalHelper({
                                        approveText: "确认",
                                        cancelText: "取消",
                                        okText: "确认",
                                    })

                                    function checkFolder(folder) {
                                        var i, itemArr;
                                        if (folder == '') {
                                            return false;
                                        }
                                        for (i = 0; i < folders.length; i++) {
                                            itemArr = folders[i].split('/');
                                            if (itemArr[0] == folder) {
                                                return true
                                            }
                                        }
                                        return false;
                                    }

                                    function createFolderShow() {
                                        $createFolderForm.show();
                                        $folderPath.focus();
                                    }

                                    $('.create-folder-form .cancel').click(function () {
                                        $createFolderForm.hide();
                                    })

                                    $folderPath.on('input', function (e) {
                                        if ($(this).parent().hasClass('error')) {
                                            $message.removeClass('warn').html("<strong>提示:</strong> 由于 Git 不支持空文件夾，创建文件夹后会生成空的 .keep 文件");
                                            $(this).parent().removeClass('error');
                                        }
                                        $createFolderSubmitBtn.removeClass('disabled');
                                    })

                                    $createFolderForm.submit(function (e) {
                                        var value = $folderPath.val();
                                        if (!folderReg.test(value) && !checkFolder(value) && value) {
                                            $('#new_file_path').val(value + '/.keep');
                                        } else {
                                            $message.addClass('warn').html("文件夹名不为空，不含有字符（／）且不能与当前目录文件夹同名");
                                            $folderPath.parent().addClass('error');
                                            e.preventDefault();
                                        }
                                        $createFolderSubmitBtn.addClass('disabled');
                                    })

                                    $('#create-folder').click(createFolderShow);
                                    window.createFolderShow = createFolderShow;

                                    window.hasTreeContextMenu = false;
                                    var contextMenuTemplate = $('#tree-item-context-menu-template').html();
                                    var submoduleContextMenuTemplate = $("#tree-item-submodule-context-menu-template").html();
                                    if ("true" == "false" || "true" == "false" || "false" == "false") {
                                        return;
                                    }

                                    function createContextMenu($item, x, y) {
                                        if (hasTreeContextMenu) {
                                            $('.tree-context').remove();
                                            hasTreeContextMenu = false;
                                            return;
                                        }
                                        hasTreeContextMenu = true;
                                        var isSubmodule = $item.hasClass('tree-item-submodule-name')
                                        var path = $item.parent().find('a').attr('href');
                                        var $menu = isSubmodule ? $(submoduleContextMenuTemplate).appendTo('body') : $(contextMenuTemplate).appendTo('body');
                                        var readonly = $item.attr('data-readonly') !== undefined
                                        var submoduleEditUrl = $item.closest('.tree-item').attr('edit_url')
                                        var submoduleDeleteUrl = $item.closest('.tree-item').attr('delete_url')
                                        var hasNormal = $item.closest('.tree-item')[0].hasAttribute('normal')
                                        if ($('.btn-readonly')[0]) {
                                            if (readonly) {
                                                $('.btn-readonly')[0].children[0].className = 'icon unlock'
                                                $('.btn-readonly')[0].lastChild.data = "取消只读"
                                            } else {
                                                $('.btn-readonly')[0].lastChild.data = "标记为只读"
                                            }
                                        }
                                        $menu.css({left: x, top: y, 'min-width': '90px'});
                                        $menu.find('.btn-open-new-tab').attr({
                                            href: path,
                                            target: '_blank'
                                        });
                                        window.Clipboard && new Clipboard('.btn-copy', {
                                            text: function () {
                                                return $item.text().trim();
                                            }
                                        });
                                        // submodule 菜单事件
                                        // 编辑子模块
                                        if (!hasNormal) {
                                            $menu.find('.btn-compact-edit').addClass('disabled')
                                        }
                                        $menu.find('.btn-compact-edit').on('click', function (event) {
                                            if (!hasNormal) {
                                                return
                                            }
                                            window.location.href = submoduleEditUrl
                                        });
                                        // 删除子模块
                                        $menu.find('.btn-submodule-delete').on('click', function (event) {
                                            removeSubmodule(submoduleDeleteUrl, $item)
                                        });
                                        // 普通文件 菜单事件
                                        $menu.find('.btn-rename').on('click', function (event) {
                                            rename($item.parent().attr('file_hex'));
                                        });
                                        $menu.find('.btn-delete').on('click', function (event) {
                                            removeFile($item.parent().next().find('.ui.form').attr('path').replace(/\+/g, '%20'), $item.find('a').text());
                                        })
                                        $menu.find('.btn-readonly').on('click', function (event) {
                                            var obj = $item.parent().next().find('.ui.form').attr('path').replace(/\+/g, '%20')
                                            var readonly = $item.attr('data-readonly') !== undefined
                                            if (readonly) {
                                                removeReadonlyMark(obj, $item)
                                            } else {
                                                addReadonlyMark(obj, $item)
                                            }
                                        })
                                        $menu.find('.btn-readonly-is-uncharged-enterprise').popup({
                                            content: "仅付费企业版可使用文件只读功能",
                                            className: {
                                                popup: 'ui popup',
                                            },
                                            position: 'bottom center'
                                        })
                                        $menu.find('.btn-readonly-is-open-svn').popup({
                                            content: "仓库已开启 SVN 支持，无法标记只读文件/目录",
                                            className: {
                                                popup: 'ui popup',
                                            },
                                            position: 'bottom center'
                                        })
                                    }

                                    // submodule 右键菜单事件

                                    var editing = false

                                    $(document).on('click', function (event) {
                                        if (hasTreeContextMenu && event.button !== 2) {
                                            setTimeout(function () {
                                                $('.tree-context').remove();
                                                hasTreeContextMenu = false;
                                            }, 200);
                                        }
                                    })

                                    $('.tree-item').on('click', function (event) {
                                        if (hasTreeContextMenu) {
                                            event.preventDefault();
                                        }
                                    })

                                    function isReadonly(path) {
                                        if (!gon.readonlyItems) {
                                            return false
                                        } else {
                                            var item_path = getItemPath(path, 'folder')
                                            return isTreeItemReadonly(item_path, gon.readonlyItems)
                                        }
                                    }

                                    function isParentsReadonly(path) {
                                        var self_path = path.replace(/\/$/, '')
                                        var parentPathArray = self_path.split('/')
                                        if (parentPathArray.length < 2) {
                                            return false
                                        }
                                        parentPathArray.pop()
                                        var parentPath = parentPathArray.join('/') + '/'
                                        return isReadonly(parentPath)
                                    }

                                    // 删除只读标记
                                    function removeReadonlyMark(path, $item) {
                                        var $icon = $($item.context.children[0])
                                        var $parent = $item.parent('.tree-item')
                                        var type = $parent.data('type')
                                        var branch = $parent.data('branch')
                                        var readonly_item = $item.data('path')
                                        if (type !== 'file') {
                                            readonly_item += "/"
                                        }

                                        var confirmString = "\n      <p>所属分支: <code class=\"readonly-branch\">".concat(htmlSafe(branch), "</code></p>      <p>文件路径: <code class=\"readonly-path\">").concat(htmlSafe(readonly_item), "</code></p>      <strong>确认取消分支上这个路径的只读标记？</strong>\n      ");

                                        gitGCModal.confirm("取消只读", confirmString, function () {
                                            var parentsReadonly = isParentsReadonly(readonly_item)
                                            if (parentsReadonly) {
                                                return gitGCModal.alert('提示', '只读记录不存在，或父级目录为只读', function () {
                                                    location.reload()
                                                })
                                            }
                                            $.ajax({
                                                url: "/dromara/go-view/readonly",
                                                type: 'DELETE',
                                                data: {
                                                    branch: branch,
                                                    path: readonly_item
                                                },
                                                success: function (res) {
                                                    if (res.code !== 0) {
                                                        gitGCModal.alert("提示", res.msg, function () {
                                                            location.reload();
                                                        })
                                                    } else {
                                                        $parent.removeClass('readonly-item')
                                                        if (gon.readonlyItems) {
                                                            gon.readonlyItems.splice(gon.readonlyItems.indexOf(readonly_item), 1)
                                                        }
                                                        if (type === 'file') {
                                                            $icon.removeClass('icon-file-readonly readonly-icon')
                                                            $icon.addClass('icon-file')
                                                        } else {
                                                            $icon.removeClass('icon-folder-readonly readonly-icon')
                                                            $icon.addClass('icon-folders')
                                                        }
                                                        $icon.popup('destroy')
                                                        $item.removeAttr('data-readonly')
                                                        location.reload();
                                                    }
                                                }
                                            })
                                        })
                                    }

                                    // 只读过滤
                                    function isTreeItemReadonly(path, readonlyItems) {
                                        var item = readonlyItems.find(function (item) {
                                            if (item.slice(-1) === '/') {
                                                return path.indexOf(item) === INDEX_BEGIN_WITH_READONLY_DIR
                                            } else {
                                                return path === item
                                            }
                                        })
                                        return item !== undefined
                                    }

                                    function getItemPath(path) {
                                        var path_type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'file';
                                        return path_type === 'file' ? path : "".concat(path, "/");
                                    }

                                    // 启用异步只读差异化的次数
                                    var is_can_readonly = false

                                    // 异步对文件树进行只读差异化显示
                                    function markTree() {
                                        $.ajax({
                                            url: "/dromara/go-view/readonly",
                                            method: 'get',
                                            data: {
                                                "branch": "master"
                                            },
                                            success: function (result) {
                                                var readonlyItems = result.readonly_items
                                                gon.readonlyItems = readonlyItems
                                                $(".tree-list-item").each(function () {
                                                    $this = $(this)
                                                    var path = $this.attr('data-path')
                                                    var type = $this.attr('data-type')
                                                    var item_path = getItemPath(path, type)
                                                    var readonly = isTreeItemReadonly(item_path, readonlyItems)
                                                    $icon = $this.find('i')
                                                    $parent = $this.parent('.tree-item')
                                                    if (readonly) {
                                                        $parent.addClass('readonly-item')
                                                        $this.attr('data-readonly', '')
                                                        $icon.attr('class', "iconfont icon-".concat(type, "-readonly readonly-icon"));
                                                        $icon.attr('data-readonly', '')
                                                        $icon.popup({
                                                            content: "只读",
                                                            className: {
                                                                popup: 'ui popup dark',
                                                            },
                                                            position: 'top center'
                                                        })
                                                    } else {
                                                        var className = type === 'file' ? 'file' : 'folders'
                                                        $this.removeAttr('data-readonly')
                                                        $icon.attr('class', "iconfont icon-".concat(className));
                                                        $icon.removeAttr('data-readonly')
                                                    }
                                                })
                                            }
                                        })
                                    }

                                    // 若已开启只读功能，对目录进行只读差异化标记
                                    if (is_can_readonly) {
                                        markTree()
                                    }

                                    // 添加只读标记
                                    function addReadonlyMark(path, $item) {
                                        var $icon = $($item.context.children[0])
                                        var $parent = $item.parent('.tree-item')
                                        var type = $parent.data('type')
                                        var branch = $parent.data('branch')
                                        var readonly_item = $item.data('path')
                                        if (type !== 'file') {
                                            readonly_item += "/"
                                        }

                                        var confirmString = "\n      <p>所属分支: <code class=\"readonly-branch\">".concat(htmlSafe(branch), "</code></p>      <p>文件路径: <code class=\"readonly-path\">").concat(htmlSafe(readonly_item), "</code></p>      <strong>确认将分支上的这个路径标记为只读？</strong>\n      ");
                                        gitGCModal.confirm("标记只读", confirmString, function () {
                                            $.ajax({
                                                url: "/dromara/go-view/readonly",
                                                type: 'POST',
                                                data: {
                                                    branch: branch,
                                                    path: readonly_item,
                                                },
                                                success: function (res) {
                                                    if (res.code !== 0) {
                                                        gitGCModal.alert("提示", res.msg, function () {
                                                            location.reload();
                                                        })
                                                    } else {
                                                        // 之前未开启只读功能
                                                        if (!is_can_readonly) {
                                                            is_can_readonly = true
                                                            return markTree()
                                                        }
                                                        $parent.addClass('readonly-item')
                                                        var existReadonlyItems = gon.readonlyItems || []
                                                        existReadonlyItems.push(readonly_item)
                                                        gon.readonlyItems = existReadonlyItems
                                                        $icon.popup({
                                                            content: "只读",
                                                            className: {
                                                                popup: 'ui popup dark',
                                                            },
                                                            position: 'top center'
                                                        })
                                                        if (type === 'file') {
                                                            $icon.removeClass('icon-file')
                                                            $icon.addClass('icon-file-readonly readonly-icon')
                                                        } else {
                                                            $icon.removeClass('icon-folders')
                                                            $icon.addClass('icon-folder-readonly readonly-icon')
                                                        }
                                                        $item.attr('data-readonly', '')
                                                        location.reload();
                                                    }
                                                }
                                            })
                                        })
                                    }

                                    function removeFile(path, file_name) {
                                        var file_name = file_name || path
                                        var content = "确定要删除 %{name} 吗？".replace('%{name}', htmlSafe(file_name));
                                        gitGCModal.confirm("删除", content, function () {
                                            $.ajax({
                                                type: "DELETE",
                                                dataType: "JSON",
                                                url: "/dromara/go-view/delete/" + path,
                                                success: function (res) {
                                                    if (res.status != 1) {
                                                        var alert_message = res.message || "删除失败"
                                                        return gitGCModal.alert("提示", alert_message)
                                                    }
                                                    if ($('.tree-item-file-name').length == 2) {
                                                        window.location.href = '/' + gon.user_project;
                                                        if (file_name.toUpperCase() === 'LICENSE') {
                                                            window.location.reload();
                                                        }
                                                    } else {
                                                        window.location.href = window.location.pathname;
                                                        if (file_name.toUpperCase() === 'LICENSE') {
                                                            window.location.reload();
                                                        }
                                                    }
                                                }
                                            });
                                        })
                                    }

                                    // 删除子模块
                                    function removeSubmodule(deleteUrl, $item) {
                                        if (!deleteUrl) return
                                        var file_name = $item.text().trim()
                                        var content = "此操作无法恢复，确定要删除子模块%{name}？".replace('%{name}', htmlSafe(file_name));
                                        new GiteeModalHelper({
                                            approveText: "删除并提交推送",
                                            cancelText: "取消",
                                            okText: "删除并提交推送",
                                        }).confirm("删除", content, function () {
                                            $.ajax({
                                                type: "DELETE",
                                                dataType: "JSON",
                                                url: deleteUrl,
                                                success: function (res) {
                                                    if (res.status == 200) {
                                                        $item.closest('.row.tree-item').remove();
                                                        window.location.reload();
                                                    } else {
                                                        Flash.error(res.message, 5000)
                                                    }
                                                },
                                                error: function (err) {
                                                    err.responseJSON && Flash.error(err.responseJSON.message);
                                                },
                                            });
                                        })
                                    }

                                    function rename(file_hex) {
                                        $(".row.tree-item").show();
                                        $(".tree-item-rename").hide();

                                        if ($("." + file_hex).is(':hidden') == true) return;

                                        $("." + file_hex).hide();
                                        var _t = $(".rename-" + file_hex);
                                        src = _t.attr('src_text')
                                        if (src == undefined) {
                                            newName = _t.find("[name='new_filename']").val()
                                            _t.attr('src_text', newName)
                                        } else {
                                            _t.find("[name='new_filename']").val(_t.attr('src_text'))
                                        }
                                        $(".rename-" + file_hex).css("display", "");
                                    }

                                    setTimeout(function () {
                                        $(".popup-save").click(function () {
                                            form = $(this).parents(".ui.form")
                                            file_hex = $(this).parents(".row.tree-item").attr("file_hex");
                                            new_filename = $.trim(form.find("[name='new_filename']").val())
                                            overwrite = false
                                            $('.tree-item-file-name').find('a').each(function (a) {
                                                title = $(this).attr('title');
                                                if (title != undefined) {
                                                    if (title.split('/')[0] == new_filename) {
                                                        overwrite = true;
                                                    }
                                                }
                                            });
                                            if (overwrite) {
                                                form.find("[name='new_filename']").focus();
                                                gitGCModal.alert("提示", "存在相同的文件名,请修改后重试")
                                                return;
                                            }
                                            $.ajax({
                                                type: 'POST',
                                                url: "/dromara/go-view/rename/" + form.attr('path').replace(/\+/g, '%20'),
                                                data:
                                                    {
                                                        new_filename: new_filename
                                                    },
                                                success: function (o) {
                                                    if (o.status == 1) {
                                                        href = window.location.href.split('?')[0]
                                                        window.location.href = href;
                                                    } else {
                                                        var alert_message = o.message || "重命名失败"
                                                        gitGCModal.alert("提示", alert_message)
                                                    }
                                                },
                                                dataType: "json"
                                            });
                                        })

                                        $(".popup-close").click(function () {
                                            $(".row.tree-item").show();
                                            $(".tree-item-rename").hide();
                                        })
                                        $('.tree-item-file-name, .tree-item-submodule-name').each(function () {
                                            var $this = $(this);
                                            if (typeof $this.parent().attr('file_hex') === 'undefined') {
                                                return;
                                            }
                                            $this.on('contextmenu', function (event) {
                                                event.preventDefault();
                                                createContextMenu($this, event.pageX, event.pageY);
                                            })
                                        })
                                    }, 1000)
                                })
                            </script>
                            <style>
                                .readonly-item {
                                    background-color: #FBFBFB !important;
                                }

                                .readonly-path, .readonly-branch {
                                    display: block;
                                    white-space: normal;
                                    word-break: break-word;
                                    line-height: 1.8;
                                    margin-top: 1em;
                                }

                                .btn-readonly-is-uncharged-enterprise, .btn-readonly-is-open-svn {
                                    background-color: #f5f5f5 !important;
                                    color: #757575 !important;
                                }
                            </style>
                            <div class="complaint">
                                <div class="ui modal small form" id="landing-comments-complaint-modal"><i
                                        class="iconfont icon-close close"></i>
                                    <div class="header">
                                        举报
                                    </div>
                                    <div class="content">
                                        <div class="appeal-success-tip hide"><i
                                                class="iconfont icon-ic_msg_success"></i>
                                            <div class="appeal-success-text">
                                                举报成功
                                            </div>
                                            <span> 我们将于2个工作日内通过站内信反馈结果给你！ </span>
                                        </div>
                                        <div class="appeal-tip">
                                            请认真填写举报原因，尽可能描述详细。
                                        </div>
                                        <div class="ui form appeal-form">
                                            <div class="inline field"><label class="left-part appeal-type-wrap">
                                                举报类型 </label>
                                                <div class="ui dropdown selection" id="appeal-comments-types">
                                                    <div class="text default">
                                                        请选择举报类型
                                                    </div>
                                                    <i class="dropdown icon"></i>
                                                    <div class="menu"></div>
                                                </div>
                                            </div>
                                            <div class="inline field"><label class="left-part"> 举报原因 </label> <textarea
                                                    class="appeal-reason" id="appeal-comment-reason" name="msg"
                                                    placeholder="请说明举报原因" rows="3"></textarea>
                                            </div>
                                            <div class="ui message callback-msg hide"></div>
                                            <div class="ui small error text message exceeded-size-tip"></div>
                                        </div>
                                    </div>
                                    <div class="actions">
                                        <div class="ui button blank cancel">
                                            取消
                                        </div>
                                        <div class="ui orange icon button disabled ok" id="complaint-comment-confirm">
                                            发送
                                        </div>
                                    </div>
                                </div>
                                <script>
                                    var $complaintCommentsModal = $('#landing-comments-complaint-modal'),
                                        $complainCommentType = $complaintCommentsModal.find('#appeal-comments-types'),
                                        $complaintModalTip = $complaintCommentsModal.find('.callback-msg'),
                                        $complaintCommentsContent = $complaintCommentsModal.find('.appeal-reason'),
                                        $complaintCommentBtn = $complaintCommentsModal.find('#complaint-comment-confirm'),
                                        complaintSending = false,
                                        initedCommentsType = false;

                                    function initCommentsTypeList() {
                                        if (!initedCommentsType) {
                                            $.ajax({
                                                url: "/appeals/fetch_types",
                                                method: 'get',
                                                data: {'type': 'comment'},
                                                success: function (data) {
                                                    var result = '';
                                                    for (var i = 0; i < data.length; i++) {
                                                        result = result + "<div class='item' data-value='" + data[i].id + "'>" + data[i].name + "</div>";
                                                    }
                                                    $complainCommentType.find('.menu').html(result);
                                                }
                                            });
                                            $complainCommentType.dropdown({showOnFocus: false});
                                            initedCommentsType = true;
                                        }
                                    }

                                    $complainCommentType.on('click', function () {
                                        $complaintCommentsModal.modal({
                                            autofocus: false,
                                            onApprove: function () {
                                                return false;
                                            },
                                            onHidden: function () {
                                                restoreCommonentDefault();
                                            }
                                        }).modal('show');
                                    });

                                    $complaintCommentsContent.on('change keyup', function (e) {
                                        var content = $(this).val();
                                        if ($.trim(content).length > 0 && $complainCommentType.dropdown('get value').length > 0) {
                                            $complaintCommentBtn.removeClass('disabled');
                                            return;
                                        }
                                        $complaintCommentBtn.addClass('disabled');
                                    });


                                    $complainCommentType.dropdown({
                                        showOnFocus: false,
                                        onChange: function (value, text, $selectedItem) {
                                            if (value.length > 0 && $.trim($complaintCommentsContent.val()).length > 0) {
                                                $complaintCommentBtn.removeClass('disabled');
                                                return
                                            }
                                            $complaintCommentBtn.addClass('disabled');
                                        }
                                    });

                                    function restoreCommonentDefault() {
                                        $complainCommentType.dropdown('restore defaults');
                                        $complaintCommentsContent.val('');
                                        $('.exceeded-size-tip').text('').hide();
                                        $complaintModalTip.text('').hide();
                                        setTimeout(function () {
                                            setCommentSendTip(false);
                                        }, 1500);
                                    }

                                    $complaintCommentBtn.on('click', function (e) {
                                        var reason = $complaintCommentsContent.val();
                                        var appealableId = $('#landing-comments-complaint-modal').attr('data-id');
                                        if (complaintSending) {
                                            return;
                                        }
                                        var appealType = $complainCommentType.dropdown('get value');
                                        var formData = new FormData();
                                        formData.append('appeal_type_id', appealType);
                                        formData.append('reason', reason);
                                        formData.append('appeal_type', 'Note');
                                        formData.append('target_id', appealableId);
                                        $.ajax({
                                            type: 'POST',
                                            url: "/appeals",
                                            cache: false,
                                            contentType: false,
                                            processData: false,
                                            data: formData,
                                            beforeSend: function () {
                                                setCommentSendStatus(true);
                                            },
                                            success: function (res) {
                                                if (res.status == 200) {
                                                    setCommentSendTip(true);
                                                    setTimeout(function () {
                                                        $complaintCommentsModal.modal('hide');
                                                        restoreCommonentDefault();
                                                    }, 3000);
                                                }
                                                setCommentSendStatus(false);
                                            },
                                            error: function (err) {
                                                showCommonTips(err.responseJSON.message, 'error');
                                                setCommentSendStatus(false);
                                            }
                                        })
                                    });

                                    function showCommonTips(text, type) {
                                        $complaintModalTip.text(text).show();
                                        if (type == 'error') {
                                            $complaintModalTip.removeClass('success').addClass('error');
                                        } else {
                                            $complaintModalTip.removeClass('error').addClass('success');
                                        }
                                    }

                                    function setCommentSendStatus(value) {
                                        complaintSending = value;
                                        if (complaintSending) {
                                            $complaintCommentBtn.addClass('loading');
                                            $complaintCommentsContent.attr('readonly', true);
                                            $complainCommentType.attr('readonly', true);
                                        } else {
                                            $complaintCommentBtn.removeClass('loading');
                                            $complaintCommentsContent.attr('readonly', false);
                                            $complainCommentType.attr('readonly', false);
                                        }
                                    }

                                    function setCommentSendTip(value) {
                                        if (value) {
                                            $('.appeal-success-tip').removeClass('hide');
                                            $('.appeal-tip').addClass('hide');
                                            $('.appeal-form').addClass('hide');
                                            $('#landing-comments-complaint-modal .actions').addClass('hide');
                                        } else {
                                            $('.appeal-success-tip').addClass('hide');
                                            $('.appeal-tip').removeClass('hide');
                                            $('.appeal-form').removeClass('hide');
                                            $('#landing-comments-complaint-modal .actions').removeClass('hide');
                                        }
                                    }
                                </script>
                                <div class="ui small modal" id="misjudgment_appeal_modal"><i class="close icon"></i>
                                    <div class="header dividing ui">
                                        误判申诉
                                    </div>
                                    <div class="content">
                                        <p>此处可能存在不合适展示的内容，页面不予展示。您可通过相关编辑功能自查并修改。</p>
                                        <p>如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 /
                                            无价值内容或违法国家有关法律法规的内容，可点击提交进行申诉，我们将尽快为您处理。</p>
                                        <div class="buttons">
                                            <div class="ui button blank cancel">
                                                取消
                                            </div>
                                            <div class="ui button orange submit">
                                                提交
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <style>
                                    #misjudgment_appeal_modal .buttons {
                                        float: right;
                                        margin-top: 30px;
                                        margin-bottom: 20px;
                                    }

                                    #misjudgment_appeal_modal .buttons .cancel {
                                        margin-right: 20px;
                                    }
                                </style>
                                <script>
                                    var $misjudgmentAppealModal = $('#misjudgment_appeal_modal');
                                    $('.cancel').on('click', function () {
                                        $misjudgmentAppealModal.modal('hide');
                                    });
                                    var $jsSubmitAppeal = $misjudgmentAppealModal.find('.submit')
                                    $jsSubmitAppeal.on('click', function (e) {
                                        e.preventDefault();
                                        $(this).addClass('loading').addClass('disabled');
                                        var type = $(this).attr('data-type');
                                        var id = $(this).attr('data-id');
                                        var projectId = $(this).attr('data-project-id');
                                        var appealType = $(this).attr('data-appeal-type');
                                        $.ajax({
                                            type: "PUT",
                                            url: "/misjudgment_appeal",
                                            data: {
                                                type: type,
                                                id: id,
                                                project_id: projectId,
                                                appeal_type: appealType
                                            },
                                            success: function (data) {
                                                Flash.info('提交成功');
                                                $jsSubmitAppeal.removeClass('loading');
                                                $misjudgmentAppealModal.modal('hide');
                                                location.reload()
                                            },
                                            error: function (e) {
                                                Flash.error('提交失败:' + e.responseText);
                                                $jsSubmitAppeal.removeClass('loading').removeClass('disabled');
                                                location.reload()
                                            }
                                        });
                                    })
                                </script>
                            </div>
                            <script>
                                "use strict";
                                $('.js-check-star').checkbox('set unchecked')
                            </script>
                        </div>
                        <script>
                            (function () {
                                $(function () {
                                    Tree.init();
                                    return TreeCommentActions.init();
                                });

                            }).call(this);
                        </script>
                    </div>
                </div>
                <div class="four wide column" style="">
                    <div class="project__right-side">
                        <div class="side-item intro">
                            <div class="header">
                                <h4>简介</h4>
                            </div>
                            <div class="content"><span class="git-project-desc-text">🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS</span>
                                <a class="hide spread" href="javascript:void(0);"> 展开 <i class="caret down icon"></i>
                                </a> <a class="retract hide" href="javascript:void(0);"> 收起 <i
                                        class="caret up icon"></i> </a>
                                <div class="intro-list">
                                    <div class="d-flex d-flex-between dropdown item js-project-label_show label-list-line-feed project-label-list ui"
                                         data-labels="[{&quot;id&quot;:1725,&quot;name&quot;:&quot;低代码&quot;,&quot;related_name&quot;:&quot;低代码&quot;,&quot;author_id&quot;:48408,&quot;ident&quot;:&quot;低代码&quot;,&quot;label_type&quot;:0,&quot;synonym_id&quot;:0,&quot;description&quot;:null,&quot;display_description&quot;:0,&quot;block&quot;:0,&quot;created_at&quot;:&quot;2021-07-13T19:11:54+08:00&quot;,&quot;updated_at&quot;:&quot;2021-07-13T19:11:54+08:00&quot;},{&quot;id&quot;:1015,&quot;name&quot;:&quot;可视化&quot;,&quot;related_name&quot;:&quot;可视化&quot;,&quot;author_id&quot;:5003188,&quot;ident&quot;:&quot;可视化&quot;,&quot;label_type&quot;:0,&quot;synonym_id&quot;:0,&quot;description&quot;:null,&quot;display_description&quot;:0,&quot;block&quot;:0,&quot;created_at&quot;:&quot;2021-07-05T15:12:25+08:00&quot;,&quot;updated_at&quot;:&quot;2021-07-05T15:12:25+08:00&quot;},{&quot;id&quot;:41115,&quot;name&quot;:&quot;DeCode&quot;,&quot;related_name&quot;:&quot;DeCode&quot;,&quot;author_id&quot;:4964818,&quot;ident&quot;:&quot;DeCode&quot;,&quot;label_type&quot;:0,&quot;synonym_id&quot;:0,&quot;description&quot;:null,&quot;display_description&quot;:0,&quot;block&quot;:0,&quot;created_at&quot;:&quot;2022-03-10T16:55:22+08:00&quot;,&quot;updated_at&quot;:&quot;2022-03-10T16:55:22+08:00&quot;},{&quot;id&quot;:511,&quot;name&quot;:&quot;vue3&quot;,&quot;related_name&quot;:&quot;vue3&quot;,&quot;author_id&quot;:512058,&quot;ident&quot;:&quot;vue3&quot;,&quot;label_type&quot;:0,&quot;synonym_id&quot;:0,&quot;description&quot;:null,&quot;display_description&quot;:0,&quot;block&quot;:0,&quot;created_at&quot;:&quot;2021-07-01T22:58:33+08:00&quot;,&quot;updated_at&quot;:&quot;2021-07-01T22:58:33+08:00&quot;}]"
                                         data-url="/dromara/go-view/update_description">
                                        <div class="mixed-label"><a title="低代码" class="project-label-item-box"
                                                                    target="_blank"
                                                                    href="/explore/topic/%E4%BD%8E%E4%BB%A3%E7%A0%81">
                                            <div class="project-label-item">
                                                低代码
                                            </div>
                                        </a><a title="可视化" class="project-label-item-box" target="_blank"
                                               href="/explore/topic/%E5%8F%AF%E8%A7%86%E5%8C%96">
                                            <div class="project-label-item">
                                                可视化
                                            </div>
                                        </a><a title="DeCode" class="project-label-item-box" target="_blank"
                                               href="/explore/topic/DeCode">
                                            <div class="project-label-item">
                                                DeCode
                                            </div>
                                        </a><a title="vue3" class="project-label-item-box" target="_blank"
                                               href="/explore/topic/vue3">
                                            <div class="project-label-item">
                                                vue3
                                            </div>
                                        </a>
                                        </div>
                                        <div class="default">
                                            暂无标签
                                        </div>
                                    </div>
                                    <div class="item"><i class="iconfont icon-link"></i> <span
                                            class="git-project-homepage"> <a rel="nofollow" id="homepage"
                                                                             target="_blank"
                                                                             href="https://www.mtruning.club/#/">https://www.mtruning.club/#/</a> </span>
                                    </div>
                                    <div class="item"><i class="iconfont icon-tag-program"></i> <span
                                            class="summary-languages"> TypeScript <span class="text-muted"> 等 6 种语言 <i
                                            class="icon dropdown"></i> </span> </span>
                                        <div class="ui popup summary-languages-popup">
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=Vue">Vue</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 62.9%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=Vue">62.9%</a>
                                            </div>
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=TypeScript">TypeScript</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 35.6%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=TypeScript">35.6%</a>
                                            </div>
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=SCSS">SCSS</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 1.0%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=SCSS">1.0%</a>
                                            </div>
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=JavaScript">JavaScript</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 0.2%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=JavaScript">0.2%</a>
                                            </div>
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=CSS">CSS</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 0.1%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=CSS">0.1%</a>
                                            </div>
                                            <div class="row">
                                                <div class="lang"><a href="/explore/all?lang=Other">Other</a>
                                                </div>
                                                <div class="lang-bar">
                                                    <div class="bar" style="width: 0.2%;"></div>
                                                </div>
                                                <a class="percentage" href="/explore/all?lang=Other">0.2%</a>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="item box-licence"><i class="iconfont icon-licence"></i> <span
                                            id="license-popup"> MIT </span>
                                        <div class="ui popup dark">
                                            使用 MIT 开源许可协议
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="content intro-form">
                                <div class="ui small input"><textarea name="project[description]" placeholder="描述"
                                                                      rows="5"></textarea>
                                </div>
                                <div class="ui small input">
                                    <input data-regex-value="(^$)|(^(http|https):\/\/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).*)|(^(http|https):\/\/[a-zA-Z0-9]+([_\-\.]{1}[a-zA-Z0-9]+)*\.[a-zA-Z]{2,10}(:[0-9]{1,10})?(\?.*)?(\/.*)?$)"
                                           name="project[homepage]" placeholder="主页(eg: https://gitee.com)" type="text">
                                </div>
                                <button class="ui orange button mt-1 btn-save"> 保存更改</button>
                                <div class="ui blank button btn-cancel-edit">
                                    取消
                                </div>
                            </div>
                        </div>
                        <div class="side-item release">
                            <div class="header">
                                <h4> 发行版 <span class="text-muted"> (2) </span></h4> <a class="ui link button pull-right"
                                                                                       href="/dromara/go-view/releases">全部</a>
                            </div>
                            <div class="content ml-3"><i class="iconfont icon-release"></i>
                                <div class="desc"><a href="/dromara/go-view/releases/tag/v2.2.4">v1.2.7的带后端请求版本</a>
                                </div>
                                <span class="timeago" datetime="2023-07-17 17:00"
                                      title="2023-07-17 17:00:52 +0800"></span>
                            </div>
                        </div>
                        <div class="side-item compass">
                            <div class="header mb-1 d-align-center">
                                <h4 class="limit-length compass-label mr-1"></h4> <a class="ui link button compass-qa"
                                                                                     href="https://compass.gitee.com/zh/docs/dimensions-define"><i
                                    class="iconfont icon-help-circle"></i> </a>
                            </div>
                            <div class="content">
                                <div class="compass-echart-container">
                                    <div data-url="/dromara/go-view/compass/chart_data" id="compass-metrics">
                                        <div class="wrap"></div>
                                        <div class="ui popup radar-popup">
                                            <h4 class="title">开源评估指数源自 OSS-Compass 评估体系，评估体系围绕以下三个维度对项目展开评估：</h4>
                                            <div class="project-radar-list">
                                                <div class="descript-contianer">
                                                    <div class="descript-title">
                                                        <p class="mb-1">1. 开源生态</p>
                                                        <ul class="mb-1 mt-1">
                                                            <li>生产力：来评估开源项目输出软件制品和开源价值的能力。</li>
                                                            <li>创新力：用于评估开源软件及其生态系统的多样化程度。</li>
                                                            <li>稳健性：用于评估开源项目面对多变的发展环境，抵御内外干扰并自我恢复的能力。</li>
                                                        </ul>
                                                        <p>2. 协作、人、软件</p>
                                                        <ul>
                                                            <li>协作：代表了开源开发行为中协作的程度和深度。</li>
                                                            <li>人：观察开源项目核心人员在开源项目中的影响力，并通过第三方视角考察用户和开发者对开源项目的评价。</li>
                                                            <li>软件：从开源项目对外输出的制品评估其价值最终落脚点。也是开源评估最“古老”的主流方向之一“开源软件”
                                                                的具体表现。
                                                            </li>
                                                        </ul>
                                                        <p>3. 评估模型</p>
                                                        <ul>
                                                            基于“开源生态”与“协作、人、软件”的维度，找到与该目标直接或间接相关的可量化指标，对开源项目健康与生态进行量化评估，最终形成开源评估指数。
                                                        </ul>
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="finaltime"></div>
                                        </div>
                                        <div class="legend-box ml-1">
                                            <div class="dimension d-flex"></div>
                                            <div class="compass-type d-flex"></div>
                                        </div>
                                    </div>
                                </div>
                                <script src="/static/javascripts/echarts.min.js"></script>
                                <script src="/static/javascripts/echarts-gl.min.js"></script>
                                <script src="https://cn-assets.gitee.com/assets/skill_radar/rep_compass_chart-a170f1ecfff8cd448229c0a3b82b074a.js"></script>
                            </div>
                        </div>
                        <div class="side-item contrib" data-url="/dromara/go-view/contributors_count?ref=master"
                             id="contributor">
                            <div class="header">
                                <h4> 贡献者 <span class="text-muted" id="contributor-count"></span></h4> <a
                                    class="ui link button pull-right"
                                    href="/dromara/go-view/contributors?ref=master">全部</a>
                            </div>
                            <div class="content" id="contributor-list"></div>
                            <div class="ui active centered inline loader" id="contributor-loader"></div>
                        </div>
                        <div class="side-item events" data-url="/dromara/go-view/events.json" id="proj-events">
                            <div class="header">
                                <h4>近期动态</h4>
                            </div>
                            <div class="content">
                                <div class="ui comments" id="event-list"></div>
                                <a class="loadmore hide" href="javascript:void(0);">加载更多 <i class="icon dropdown"></i>
                                </a>
                                <center>
                                    <div class="text-muted nomore hide">
                                        不能加载更多了
                                    </div>
                                    <div class="ui inline loader active"></div>
                                </center>
                            </div>
                        </div>
                    </div>
                    <div class="ui modal tiny" id="edit-project-description"><i class="iconfont icon-close close"></i>
                        <div class="header">
                            编辑仓库简介
                        </div>
                        <div class="content">
                            <div class="item mb-2">
                                <div class="title label">
                                    简介内容
                                </div>
                                <div class="ui small input"><textarea maxlength="200" name="project[description]"
                                                                      placeholder="描述" rows="5">🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS</textarea>
                                </div>
                            </div>
                            <div class="item mb-2">
                                <div class="title label">
                                    主页
                                </div>
                                <div class="ui small input">
                                    <input data-regex-value="(^$)|(^(http|https):\/\/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).*)|(^(http|https):\/\/[a-zA-Z0-9]+([_\-\.]{1}[a-zA-Z0-9]+)*\.[a-zA-Z]{2,10}(:[0-9]{1,10})?(\?.*)?(\/.*)?$)"
                                           name="project[homepage]" placeholder="主页(eg: https://gitee.com)" type="text"
                                           value="https://www.mtruning.club/#/">
                                </div>
                            </div>
                        </div>
                        <div class="actions">
                            <button class="ui button blank cancel">取消</button>
                            <button class="ui button orange btn-save">保存更改</button>
                        </div>
                    </div>
                    <style>
                        #license-popup {
                            color: #005980;
                            cursor: pointer;
                        }
                    </style>
                    <script>
                        window.gon.projectRightSide = {
                            homepage: "https://www.mtruning.club/#/",
                            description: "🏆GoView 是一个Vue3搭建的低代码数据可视化开发平台，将图表或页面元素封装为基础组件，无需编写代码即可完成业务需求。 它的技术栈为：Vue3 + TypeScript4 + Vite2 + NaiveUI + ECharts5 + Axios + Pinia2 + PlopJS",
                            url: '/dromara/go-view/update_description',
                            i18n: {
                                invalidHomepage: '不是有效的 http 地址',
                                descriptionLimitExceeded: '简介长度不得超过%{limit}个字符',
                                noDescription: '暂无描述',
                                noPermission: '无权限操作！',
                                requestError: '修改发生错误，请稍后重试！'
                            }
                        }
                        window.gon.cloneArrSelectedLabel = [{
                            "id": 1725,
                            "name": "低代码",
                            "related_name": "低代码",
                            "author_id": 48408,
                            "ident": "低代码",
                            "label_type": 0,
                            "synonym_id": 0,
                            "description": null,
                            "display_description": 0,
                            "block": 0,
                            "created_at": "2021-07-13T19:11:54+08:00",
                            "updated_at": "2021-07-13T19:11:54+08:00"
                        }, {
                            "id": 1015,
                            "name": "可视化",
                            "related_name": "可视化",
                            "author_id": 5003188,
                            "ident": "可视化",
                            "label_type": 0,
                            "synonym_id": 0,
                            "description": null,
                            "display_description": 0,
                            "block": 0,
                            "created_at": "2021-07-05T15:12:25+08:00",
                            "updated_at": "2021-07-05T15:12:25+08:00"
                        }, {
                            "id": 41115,
                            "name": "DeCode",
                            "related_name": "DeCode",
                            "author_id": 4964818,
                            "ident": "DeCode",
                            "label_type": 0,
                            "synonym_id": 0,
                            "description": null,
                            "display_description": 0,
                            "block": 0,
                            "created_at": "2022-03-10T16:55:22+08:00",
                            "updated_at": "2022-03-10T16:55:22+08:00"
                        }, {
                            "id": 511,
                            "name": "vue3",
                            "related_name": "vue3",
                            "author_id": 512058,
                            "ident": "vue3",
                            "label_type": 0,
                            "synonym_id": 0,
                            "description": null,
                            "display_description": 0,
                            "block": 0,
                            "created_at": "2021-07-01T22:58:33+08:00",
                            "updated_at": "2021-07-01T22:58:33+08:00"
                        }] || []
                        $(function () {
                            var $editModal = $('#edit-project-description')
                            $editModal.modal({
                                onShow: function () {
                                    window.globalUtils.getFocus($editModal.find('textarea'))
                                }
                            })
                            $('.project__right-side').on('click', '.header .btn-edit', function () {
                                $editModal.modal('show')
                            })
                            $('#license-popup').popup({position: 'bottom center', lastResort: 'bottom center'})

                            $('.js-project-label_show').projectLabel({
                                i18n: {
                                    empty: "标签名不能为空",
                                    verify: "标签名只允许包含中文、字母、数字或者中划线(-)，不能以中划线开头，且长度少于35个字符",
                                    max: "最多选择 5 个标签"
                                }
                            })
                        })
                    </script>
                </div>
            </div>
        </div>
        <style>
            .team-member-checkbox .ui.radio.checkbox.checked label:after {
                top: 7px !important;
            }
        </style>
        <script>
            function scrollToReadmeBox() {
                var readmeBox = document.getElementById('git-readme');
                if (readmeBox) {
                    const topPos = readmeBox.offsetTop;
                    window.scrollTo({top: topPos, behavior: "smooth"});
                }
            }

            $(".box-licence").click(function (event) {
                $('.lisence-content').show()
                $('.lisence-edit').show()
                $('.readme-content').hide()
                $('.readme-edit').hide()
                $('#git-readme').removeClass('unshow')
                $('.file_title_license').addClass('active-title')
                $('.file_title_readme').removeClass('active-title')
                scrollToReadmeBox()
            });
        </script>
    </div>
    <script>
        (function () {
            var donateModal;

            Gitee.modalHelper = new GiteeModalHelper({
                alertText: '提示',
                okText: '确定'
            });

            donateModal = new ProjectDonateModal({
                el: '#project-donate-modal',
                alipayUrl: '/dromara/go-view/alipay',
                wepayUrl: '/dromara/go-view/wepay',
                nameIsBlank: '名称不能为空',
                nameTooLong: '名称过长（最多为 36 个字符）',
                modalHelper: Gitee.modalHelper
            });

            if (null === 'true') {
                donateModal.show();
            }

            $('#project-donate').on('click', function () {
                return donateModal.show();
            });

        }).call(this);
    </script>
    <script>
        Tree.initHighlightTheme('white')
    </script>
</div>
<div class="gitee-project-extension">
    <div class="extension lang">
        TypeScript
    </div>
    <div class="extension public">
        1
    </div>
    <div class="extension https">
        https://gitee.com/dromara/go-view.git
    </div>
    <div class="extension ssh">
        git@gitee.com:dromara/go-view.git
    </div>
    <div class="extension namespace">
        dromara
    </div>
    <div class="extension repo">
        go-view
    </div>
    <div class="extension name">
        go-view
    </div>
    <div class="extension branch">
        master
    </div>
</div>
<script>
    $(function () {
        GitLab.GfmAutoComplete.dataSource = "/dromara/go-view/autocomplete_sources"
        GitLab.GfmAutoComplete.Emoji.assetBase = '/assets/emoji'
        GitLab.GfmAutoComplete.setup();
    });
</script>
<footer id="git-footer-main">
    <div class="ui container">
        <div class="logo-row"><a href="https://gitee.com"><img alt="Gitee - 基于 Git 的代码托管和研发协作平台" class="logo-img"
                                                               src="/static/images/logo-black.svg?t=158106666"> </a>
        </div>
        <div class="name-important">
            深圳市奥思网络科技有限公司版权所有
        </div>
        <div class="ui two column grid d-flex-center">
            <div class="eight wide column git-footer-left">
                <div class="ui four column grid" id="footer-left">
                    <div class="column">
                        <div class="ui link list">
                            <div class="item"><a class="item" href="/all-about-git">Git 大全</a>
                            </div>
                            <div class="item"><a class="item" rel="nofollow"
                                                 href="https://oschina.gitee.io/learn-git-branching/">Git 命令学习</a>
                            </div>
                            <div class="item"><a class="item" rel="nofollow" href="https://copycat.gitee.com/">CopyCat
                                代码克隆检测</a>
                            </div>
                            <div class="item"><a class="item" href="/appclient">APP与插件下载</a>
                            </div>
                        </div>
                    </div>
                    <div class="column">
                        <div class="ui link list">
                            <div class="item"><a class="item" href="/gitee_reward">Gitee Reward</a>
                            </div>
                            <div class="item"><a class="item" href="/gitee-stars">Gitee 封面人物</a>
                            </div>
                            <div class="item"><a class="item" href="/gvp">GVP 项目</a>
                            </div>
                            <div class="item"><a class="item" rel="nofollow" href="https://blog.gitee.com/">Gitee 博客</a>
                            </div>
                            <div class="item"><a class="item" href="/enterprises#nonprofit-plan">Gitee 公益计划</a>
                            </div>
                            <div class="item"><a class="item" href="https://gitee.com/features/gitee-go">Gitee 持续集成</a>
                            </div>
                        </div>
                    </div>
                    <div class="column">
                        <div class="ui link list">
                            <div class="item"><a class="item" href="/api/v5/swagger">OpenAPI</a>
                            </div>
                            <div class="item"><a class="item" href="https://help.gitee.com">帮助文档</a>
                            </div>
                            <div class="item"><a class="item" href="/self_services">在线自助服务</a>
                            </div>
                            <div class="item"><a class="item" href="/help/articles/4378">更新日志</a>
                            </div>
                        </div>
                    </div>
                    <div class="column">
                        <div class="ui link list">
                            <div class="item"><a class="item" href="/about_us">关于我们</a>
                            </div>
                            <div class="item"><a class="item" rel="nofollow"
                                                 href="https://www.oschina.net/news/131099/oschina-hiring">加入我们</a>
                            </div>
                            <div class="item"><a class="item" href="/terms">使用条款</a>
                            </div>
                            <div class="item"><a class="item" href="/oschina/git-osc/issues">意见建议</a>
                            </div>
                            <div class="item"><a class="item" href="/links.html">合作伙伴</a>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <div class="eight wide column right aligned followus git-footer-right">
                <div class="qrcode pre-box mr-1">
                    <img class="mjc-qr"
                         src="https://cn-assets.gitee.com/assets/mjc_ip@2x-42c8d21ed1a7027b083d7457a6cf5b8a.png"
                         alt="Mjc ip@2x">
                    <div class="qrcode-box customer_service">
                        <img alt="售前咨询客服"
                             src="https://cn-assets.gitee.com/assets/QR@2x-5a3f4a6d99fb8d31cc6ef3be028abc8c.png">
                    </div>
                    <p class="mt-1 mini_app-text">售前咨询客服</p>
                </div>
                <div class="qrcode mr-1">
                    <div class="qrcode-box">
                        <img alt="技术交流QQ群"
                             src="https://cn-assets.gitee.com/assets/contact_qr-5e2c2a8da453396590e56a545bce4974.jpg">
                    </div>
                    <p class="mt-1 mini_app-text">技术交流QQ群</p>
                </div>
                <div class="qrcode">
                    <div class="qrcode-box">
                        <img alt="微信服务号" class="weixin-qr"
                             src="https://cn-assets.gitee.com/assets/qrcode-weixin@2x-b74cc97a2ea80123ea53a737f709836d.png">
                    </div>
                    <p class="mt-1 weixin-text">微信服务号</p>
                </div>
                <div class="phone-and-qq column">
                    <div class="ui list official-support-container">
                        <div class="item"></div>
                        <div class="item mail-and-zhihu"><a rel="nofollow" href="mailto: client@oschina.cn"><i
                                class="iconfont icon-msg-mail"></i> <span id="git-footer-email">client#oschina.cn</span>
                        </a>
                        </div>
                        <div class="item tel"><a> <i class="iconfont icon-tel"></i> <span>企业版在线使用：400-606-0201</span>
                        </a>
                        </div>
                        <div class="item tel"><a class="d-flex"> <i class="iconfont icon-tel mt-05 mr-05"></i> <span>专业版私有部署：</span>
                            <div>
                                <div>
                                    13670252304
                                </div>
                                <div>
                                    13352947997
                                </div>
                            </div>
                        </a>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="bottombar">
        <div class="ui container">
            <div class="ui d-flex d-flex-between">
                <div class="seven wide column partner d-flex">
                    <div class="open-atom d-flex-center">
                        <img class="logo-openatom mr-1" alt="开放原子开源基金会"
                             src="https://cn-assets.gitee.com/assets/logo-openatom-d083391cc8a54e283529f3fc11cc38ca.svg">
                        <a target="_blank" rel="nofollow" href="https://www.openatom.org/">开放原子开源基金会</a>
                        <div class="sub-title ml-1">
                            合作代码托管平台
                        </div>
                    </div>
                    <div class="report-12377 d-flex-center ml-3">
                        <img class="report-12377__logo mr-1" alt="违法和不良信息举报中心"
                             src="https://cn-assets.gitee.com/assets/12377@2x-1aa42ed2d2256f82a61ecf57be1ec244.png"> <a
                            target="_blank" rel="nofollow" href="https://12377.cn">违法和不良信息举报中心</a>
                    </div>
                    <div class="copyright ml-3"><a rel="nofollow" href="http://beian.miit.gov.cn/">粤ICP备12009483号</a>
                    </div>
                </div>
                <div class="nine wide column right aligned"><i class="icon world"></i> <a href="/language/zh-CN">简 体</a>
                    / <a href="/language/zh-TW">繁 體</a> / <a href="/language/en">English</a>
                </div>
            </div>
        </div>
    </div>
</footer>
<script>
    var officialEmail = $('#git-footer-email').text()
    $('#git-footer-main .icon-popup').popup({position: 'bottom center'})
    $('#git-footer-email').text(officialEmail.replace('#', '@'))
    window.gon.popover_card_locale = {
        follow: "关注",
        unfollow: "已关注",
        gvp_title: "GVP - Gitee 最有价值开源项目",
        project: "项目",
        org: "开源组织",
        member: "",
        author: "作者",
        user_blocked: "该用户已被屏蔽或已注销",
        net_error: "网络错误",
        unknown_exception: "未知异常"
    }
    window.gon.select_message = {
        placeholder: "请输入个人空间地址或完整的邮箱地址"
    }
</script>
<script src="https://cn-assets.gitee.com/webpacks/popover_card-90e2943d5fc869fd6435.bundle.js"></script>
<link rel="stylesheet" media="all" href="https://cn-assets.gitee.com/webpacks/css/gitee_nps-ae0dbee40f6ddc72015a.css">
<script src="https://cn-assets.gitee.com/webpacks/gitee_nps-a17ec945d8ddaf40dc1d.bundle.js"></script>
<script src="https://cn-assets.gitee.com/webpacks/gitee_icons-2a476c43d2fabbe57e80.bundle.js"></script>
<div class="side-toolbar">
    <div class="button toolbar-help"><i class="iconfont icon-help"></i>
    </div>
    <div class="ui popup left center dark">
        点此查找更多帮助
    </div>
    <div class="toolbar-help-dialog">
        <div class="toolbar-dialog-header">
            <h3 class="toolbar-dialog-title">搜索帮助</h3>
            <form class="toolbar-help-search-form" action="/help/load_keywords_data" accept-charset="UTF-8"
                  method="get">
                <input name="utf8" type="hidden" value="✓">
                <div class="ui icon input fluid toolbar-help-search">
                    <input name="keywords" placeholder="请输入产品名称或问题" type="text"> <i class="icon search"></i>
                </div>
            </form>
            <i class="iconfont icon-close toolbar-dialog-close-icon"></i>
        </div>
        <div class="toolbar-dialog-content">
            <div class="toolbar-help-hot-search">
                <div class="toolbar-roll"><a class="init active" title="Git 命令在线学习"
                                             href="https://oschina.gitee.io/learn-git-branching/?utm_source==gitee-help-widget"><i
                        class="Blue icon icon-command iconfont"></i> <span>Git 命令在线学习</span> </a><a class="init "
                                                                                                    title="如何在 Gitee 导入 GitHub 仓库"
                                                                                                    href="https://gitee.com/help/articles/4261?utm_source==gitee-help-widget"><i
                        class="icon icon-clipboard iconfont orange"></i> <span>如何在 Gitee 导入 GitHub 仓库</span> </a>
                </div>
                <div class="toolbar-list">
                    <div class="toolbar-list-item"><a href="/help/articles/4114">Git 仓库基础操作</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4166">企业版和社区版功能对比</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4191">SSH 公钥设置</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4194">如何处理代码冲突</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4232">仓库体积过大，如何减小？</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4279">如何找回被删除的仓库数据</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4283">Gitee 产品配额说明</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4284">GitHub仓库快速导入Gitee及同步更新</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4328">什么是 Release（发行版）</a>
                    </div>
                    <div class="toolbar-list-item"><a href="/help/articles/4354">将 PHP 项目自动发布到 packagist.org</a>
                    </div>
                </div>
            </div>
            <div class="toolbar-help-search-reseult"></div>
        </div>
    </div>
    <script>
        var opt = {position: 'left center'};
        var $helpSideToolbar = $('.button.toolbar-help');
        var $toolbarRoll = $('.toolbar-roll');

        $(function () {
            if (false) {
                $helpSideToolbar.popup(opt).popup({lastResort: 'left center'})
            } else {
                $helpSideToolbar.popup({lastResort: 'left center'}).popup('show', opt);
                setTimeout(function () {
                    $helpSideToolbar.popup('hide', opt);
                }, 3000);
            }

            if ($toolbarRoll.length) {
                setInterval(function () {
                    var $nextActiveLink = $toolbarRoll.find('a.active').next();
                    if (!$nextActiveLink.length) {
                        $nextActiveLink = $toolbarRoll.find('a:first-child');
                    }
                    $nextActiveLink.attr('class', 'active').siblings().removeClass('active init');
                }, 5000);
            }
        })
    </script>
    <div class="popup button" id="home-comment"><i class="iconfont icon-comment"></i>
    </div>
    <div class="ui popup dark">
        评论
    </div>
    <div class="toolbar-appeal popup button"><i class="iconfont icon-report"></i>
    </div>
    <div class="ui popup dark">
        仓库举报
    </div>
    <script>
        $('.toolbar-appeal').popup({position: 'left center'});
    </script>
    <div class="button gotop popup" id="gotop"><i class="iconfont icon-top"></i>
    </div>
    <div class="ui popup dark">
        回到顶部
    </div>
</div>
<div class="form modal normal-modal tiny ui" id="unlanding-complaint-modal"><i class="iconfont icon-close close"></i>
    <div class="header">
        登录提示
    </div>
    <div class="container actions">
        <div class="content">
            该操作需登录 Gitee 帐号，请先登录后再操作。
        </div>
        <div class="ui orange icon large button ok">
            立即登录
        </div>
        <div class="ui button blank cancel">
            没有帐号，去注册
        </div>
    </div>
</div>
<script>
    var $elm = $('.toolbar-appeal');

    $elm.on('click', function () {
        var modals = $("#unlanding-complaint-modal.normal-modal");
        if (modals.length > 1) {
            modals.eq(0).modal('show');
        } else {
            modals.modal('show');
        }
    })
    $("#unlanding-complaint-modal.normal-modal").modal({
        onDeny: function () {
            window.location.href = "/signup?from=";
        },
        onApprove: function () {
            window.location.href = "/login?from=";
        }
    })
</script>
<style>
    .side-toolbar .bdsharebuttonbox a {
        font-size: 24px;
        color: white !important;
        opacity: 0.9;
        margin: 6px 6px 0px 6px;
        background-image: none;
        text-indent: 0;
        height: auto;
        width: auto;
    }
</style>
<style>
    #udesk_btn a {
        margin: 0px 20px 167px 0px !important;
    }
</style>
<script>
    (function () {
        $('#project-user-message').popup({
            position: 'left center'
        });

    }).call(this);
</script>
<script>
    Gitee.initSideToolbar({
        hasComment: true,
        commentUrl: '/dromara/go-view#tree_comm_title'
    })
</script>
<script>
    (function () {
        this.__gac = {
            domain: 'www.oschina.net'
        };

    }).call(this);
</script>
<script src="https://cn-assets.gitee.com/assets/bdstatic/app-070a9e339ac82bf2bf7ef20375cd4121.js"></script>
<script src="https://cn-assets.gitee.com/webpacks/build_status-a3ee4cc8489b2defc1a8.bundle.js"></script>
<script src="https://cn-assets.gitee.com/webpacks/scan_status-8b929e0997115c370d33.bundle.js"></script>
<script src="https://cn-assets.gitee.com/webpacks/mermaid_render-80437a0d645e9044f9e8.bundle.js"></script>
</body>
</html>